Browse Source

* fixed multi-thread case of FPC_SYSCALL3 (all others were already correct)

git-svn-id: trunk@7476 -
Jonas Maebe 18 years ago
parent
commit
a2dbc4d272
1 changed files with 5 additions and 6 deletions
  1. 5 6
      rtl/linux/sparc/syscall.inc

+ 5 - 6
rtl/linux/sparc/syscall.inc

@@ -183,17 +183,16 @@ asm
         subcc   %o3,%g0,%g0
         subcc   %o3,%g0,%g0
         bne     .LThread
         bne     .LThread
         nop
         nop
-        sethi   %hi(Errno+4),%o2
+        sethi   %hi(Errno+4),%o0
         ba      .LNoThread
         ba      .LNoThread
-        or      %o2,%lo(Errno+4),%o2
+        or      %o0,%lo(Errno+4),%o0
 .LThread:
 .LThread:
         sethi   %hi(Errno),%o0
         sethi   %hi(Errno),%o0
-        ld      [%o3],%o1
         or      %o0,%lo(Errno),%o0
         or      %o0,%lo(Errno),%o0
-        call    %o1
-        nop
+        call    %o3
+        ld      [%o0],%o0
 .LNoThread:
 .LNoThread:
-        st      %o0,[%o2]
+        st      %l0,[%o0]
         mov     -1,%o0
         mov     -1,%o0
 .LSyscOK:
 .LSyscOK:
         mov     %o0,%i0
         mov     %o0,%i0