Skip to content

Commit b34a13d

Browse files
committed
std.os.linux.sparc64: use icc instead of xcc in asm clobbers
LLVM currently doesn't recognize xcc; icc does what we want.
1 parent 2f3234c commit b34a13d

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

lib/std/os/linux/sparc64.zig

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ pub fn syscall_fork() usize {
5454
\\ 2:
5555
: [ret] "={o0}" (-> usize),
5656
: [number] "{g1}" (@intFromEnum(SYS.fork)),
57-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
57+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
5858
}
5959

6060
pub fn syscall0(number: SYS) usize {
@@ -66,7 +66,7 @@ pub fn syscall0(number: SYS) usize {
6666
\\ 1:
6767
: [ret] "={o0}" (-> usize),
6868
: [number] "{g1}" (@intFromEnum(number)),
69-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
69+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
7070
}
7171

7272
pub fn syscall1(number: SYS, arg1: usize) usize {
@@ -79,7 +79,7 @@ pub fn syscall1(number: SYS, arg1: usize) usize {
7979
: [ret] "={o0}" (-> usize),
8080
: [number] "{g1}" (@intFromEnum(number)),
8181
[arg1] "{o0}" (arg1),
82-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
82+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
8383
}
8484

8585
pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {
@@ -93,7 +93,7 @@ pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {
9393
: [number] "{g1}" (@intFromEnum(number)),
9494
[arg1] "{o0}" (arg1),
9595
[arg2] "{o1}" (arg2),
96-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
96+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
9797
}
9898

9999
pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {
@@ -108,7 +108,7 @@ pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {
108108
[arg1] "{o0}" (arg1),
109109
[arg2] "{o1}" (arg2),
110110
[arg3] "{o2}" (arg3),
111-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
111+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
112112
}
113113

114114
pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize) usize {
@@ -124,7 +124,7 @@ pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize)
124124
[arg2] "{o1}" (arg2),
125125
[arg3] "{o2}" (arg3),
126126
[arg4] "{o3}" (arg4),
127-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
127+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
128128
}
129129

130130
pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize, arg5: usize) usize {
@@ -141,7 +141,7 @@ pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize,
141141
[arg3] "{o2}" (arg3),
142142
[arg4] "{o3}" (arg4),
143143
[arg5] "{o4}" (arg5),
144-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
144+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
145145
}
146146

147147
pub fn syscall6(
@@ -167,7 +167,7 @@ pub fn syscall6(
167167
[arg4] "{o3}" (arg4),
168168
[arg5] "{o4}" (arg5),
169169
[arg6] "{o5}" (arg6),
170-
: .{ .memory = true, .xcc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
170+
: .{ .memory = true, .icc = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
171171
}
172172

173173
pub fn clone() callconv(.naked) usize {
@@ -233,7 +233,7 @@ pub fn restore_rt() callconv(.c) void {
233233
return asm volatile ("t 0x6d"
234234
:
235235
: [number] "{g1}" (@intFromEnum(SYS.rt_sigreturn)),
236-
: .{ .memory = true, .xcc = true, .o0 = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
236+
: .{ .memory = true, .icc = true, .o0 = true, .o1 = true, .o2 = true, .o3 = true, .o4 = true, .o5 = true, .o7 = true });
237237
}
238238

239239
pub const F = struct {

0 commit comments

Comments
 (0)