Sfoglia il codice sorgente

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 anni fa
parent
commit
075fdb909b
1 ha cambiato i file con 4 aggiunte e 4 eliminazioni
  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