authorgravatar for jens.goldberg@gmail.comJens Goldberg <jens.goldberg@gmail.com> 2021-12-18 20:48:32+00:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-12-18 14:42:01-08:00
log5b29b4ffa6d21d574ed6cb8a00e2aba9dcb79ff8
tree303ecb30335421c555650b7bc29cdfb846c91e80
parent6d04de706ac0fcb20e1468ed6ac7a88deb7e1744

Fix MIPS inline assembly clobbers


1 files changed, 11 insertions(+), 11 deletions(-)

lib/std/os/linux/mips.zig+11-11
...@@ -17,7 +17,7 @@ pub fn syscall0(number: SYS) usize {...@@ -17,7 +17,7 @@ pub fn syscall0(number: SYS) usize {
17 \\ 1:17 \\ 1:
18 : [ret] "={$2}" (-> usize),18 : [ret] "={$2}" (-> usize),
19 : [number] "{$2}" (@enumToInt(number)),19 : [number] "{$2}" (@enumToInt(number)),
20 : "memory", "cc", "$7"20 : "$1", "$3", "$4", "$5", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
21 );21 );
22}22}
2323
...@@ -37,7 +37,7 @@ pub fn syscall_pipe(fd: *[2]i32) usize {...@@ -37,7 +37,7 @@ pub fn syscall_pipe(fd: *[2]i32) usize {
37 : [ret] "={$2}" (-> usize),37 : [ret] "={$2}" (-> usize),
38 : [number] "{$2}" (@enumToInt(SYS.pipe)),38 : [number] "{$2}" (@enumToInt(SYS.pipe)),
39 [fd] "{$4}" (fd),39 [fd] "{$4}" (fd),
40 : "memory", "cc", "$7"40 : "$1", "$3", "$5", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
41 );41 );
42}42}
4343
...@@ -50,7 +50,7 @@ pub fn syscall1(number: SYS, arg1: usize) usize {...@@ -50,7 +50,7 @@ pub fn syscall1(number: SYS, arg1: usize) usize {
50 : [ret] "={$2}" (-> usize),50 : [ret] "={$2}" (-> usize),
51 : [number] "{$2}" (@enumToInt(number)),51 : [number] "{$2}" (@enumToInt(number)),
52 [arg1] "{$4}" (arg1),52 [arg1] "{$4}" (arg1),
53 : "memory", "cc", "$7"53 : "$1", "$3", "$5", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
54 );54 );
55}55}
5656
...@@ -64,7 +64,7 @@ pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {...@@ -64,7 +64,7 @@ pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {
64 : [number] "{$2}" (@enumToInt(number)),64 : [number] "{$2}" (@enumToInt(number)),
65 [arg1] "{$4}" (arg1),65 [arg1] "{$4}" (arg1),
66 [arg2] "{$5}" (arg2),66 [arg2] "{$5}" (arg2),
67 : "memory", "cc", "$7"67 : "$1", "$3", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
68 );68 );
69}69}
7070
...@@ -79,7 +79,7 @@ pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {...@@ -79,7 +79,7 @@ pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {
79 [arg1] "{$4}" (arg1),79 [arg1] "{$4}" (arg1),
80 [arg2] "{$5}" (arg2),80 [arg2] "{$5}" (arg2),
81 [arg3] "{$6}" (arg3),81 [arg3] "{$6}" (arg3),
82 : "memory", "cc", "$7"82 : "$1", "$3", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
83 );83 );
84}84}
8585
...@@ -95,7 +95,7 @@ pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize)...@@ -95,7 +95,7 @@ pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize)
95 [arg2] "{$5}" (arg2),95 [arg2] "{$5}" (arg2),
96 [arg3] "{$6}" (arg3),96 [arg3] "{$6}" (arg3),
97 [arg4] "{$7}" (arg4),97 [arg4] "{$7}" (arg4),
98 : "memory", "cc", "$7"98 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
99 );99 );
100}100}
101101
...@@ -116,7 +116,7 @@ pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize,...@@ -116,7 +116,7 @@ pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize,
116 [arg3] "{$6}" (arg3),116 [arg3] "{$6}" (arg3),
117 [arg4] "{$7}" (arg4),117 [arg4] "{$7}" (arg4),
118 [arg5] "r" (arg5),118 [arg5] "r" (arg5),
119 : "memory", "cc", "$7"119 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
120 );120 );
121}121}
122122
...@@ -150,7 +150,7 @@ pub fn syscall6(...@@ -150,7 +150,7 @@ pub fn syscall6(
150 [arg4] "{$7}" (arg4),150 [arg4] "{$7}" (arg4),
151 [arg5] "r" (arg5),151 [arg5] "r" (arg5),
152 [arg6] "r" (arg6),152 [arg6] "r" (arg6),
153 : "memory", "cc", "$7"153 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
154 );154 );
155}155}
156156
...@@ -184,7 +184,7 @@ pub fn syscall7(...@@ -184,7 +184,7 @@ pub fn syscall7(
184 [arg5] "r" (arg5),184 [arg5] "r" (arg5),
185 [arg6] "r" (arg6),185 [arg6] "r" (arg6),
186 [arg7] "r" (arg7),186 [arg7] "r" (arg7),
187 : "memory", "cc", "$7"187 : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
188 );188 );
189}189}
190190
...@@ -195,7 +195,7 @@ pub fn restore() callconv(.Naked) void {...@@ -195,7 +195,7 @@ pub fn restore() callconv(.Naked) void {
195 return asm volatile ("syscall"195 return asm volatile ("syscall"
196 :196 :
197 : [number] "{$2}" (@enumToInt(SYS.sigreturn)),197 : [number] "{$2}" (@enumToInt(SYS.sigreturn)),
198 : "memory", "cc", "$7"198 : "$1", "$3", "$4", "$5", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
199 );199 );
200}200}
201201
...@@ -203,7 +203,7 @@ pub fn restore_rt() callconv(.Naked) void {...@@ -203,7 +203,7 @@ pub fn restore_rt() callconv(.Naked) void {
203 return asm volatile ("syscall"203 return asm volatile ("syscall"
204 :204 :
205 : [number] "{$2}" (@enumToInt(SYS.rt_sigreturn)),205 : [number] "{$2}" (@enumToInt(SYS.rt_sigreturn)),
206 : "memory", "cc", "$7"206 : "$1", "$3", "$4", "$5", "$6", "$7", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", "$25", "hi", "lo", "memory"
207 );207 );
208}208}
209209