Skip to content

Commit 0a9f666

Browse files
committed
cbe: translate sparc ccr/icc/xcc registers to icc
C compilers do not distinguish between these.
1 parent 1231aa9 commit 0a9f666

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

src/codegen/c.zig

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5672,6 +5672,10 @@ fn airAsm(f: *Function, inst: Air.Inst.Index) !CValue {
56725672
c_name_buf[0] = '$';
56735673
@memcpy((&c_name_buf)[1..][0..field_name.len], field_name);
56745674
break :name (&c_name_buf)[0 .. 1 + field_name.len];
5675+
} else if (target.cpu.arch.isSPARC() and
5676+
(mem.eql(u8, field_name, "ccr") or mem.eql(u8, field_name, "icc") or mem.eql(u8, field_name, "xcc"))) name: {
5677+
// C compilers just use `icc` to encompass all of these.
5678+
break :name "icc";
56755679
} else field_name;
56765680

56775681
try w.print(" {f}", .{fmtStringLiteral(name, null)});

0 commit comments

Comments
 (0)