Ver código fonte

fix syscall asm constraints for arm too

no problems were detected so far, but the constraints seem to have
been invalid just like the mips ones.
Rich Felker 12 anos atrás
pai
commit
075fdb909b
1 arquivos alterados com 4 adições e 4 exclusões
  1. 4 4
      arch/arm/syscall_arch.h

+ 4 - 4
arch/arm/syscall_arch.h

@@ -24,7 +24,7 @@ static inline long __syscall1(long n, long a)
 {
 	register long r7 __asm__("r7") = n;
 	register long r0 __asm__("r0") = a;
-	__asm_syscall("r"(r7), "r"(r0));
+	__asm_syscall("r"(r7), "0"(r0));
 }
 
 static inline long __syscall2(long n, long a, long b)
@@ -32,7 +32,7 @@ static inline long __syscall2(long n, long a, long b)
 	register long r7 __asm__("r7") = n;
 	register long r0 __asm__("r0") = a;
 	register long r1 __asm__("r1") = b;
-	__asm_syscall("r"(r7), "r"(r0), "r"(r1));
+	__asm_syscall("r"(r7), "0"(r0), "r"(r1));
 }
 
 static inline long __syscall3(long n, long a, long b, long c)
@@ -41,7 +41,7 @@ static inline long __syscall3(long n, long a, long b, long c)
 	register long r0 __asm__("r0") = a;
 	register long r1 __asm__("r1") = b;
 	register long r2 __asm__("r2") = c;
-	__asm_syscall("r"(r7), "r"(r0), "r"(r1), "r"(r2));
+	__asm_syscall("r"(r7), "0"(r0), "r"(r1), "r"(r2));
 }
 
 static inline long __syscall4(long n, long a, long b, long c, long d)
@@ -51,7 +51,7 @@ static inline long __syscall4(long n, long a, long b, long c, long d)
 	register long r1 __asm__("r1") = b;
 	register long r2 __asm__("r2") = c;
 	register long r3 __asm__("r3") = d;
-	__asm_syscall("r"(r7), "r"(r0), "r"(r1), "r"(r2), "r"(r3));
+	__asm_syscall("r"(r7), "0"(r0), "r"(r1), "r"(r2), "r"(r3));
 }
 
 #else