Răsfoiți Sursa

* fixed fppipe for sparc64-linux

git-svn-id: trunk@36760 -
florian 8 ani în urmă
părinte
comite
10f52f1cac
1 a modificat fișierele cu 6 adăugiri și 7 ștergeri
  1. 6 7
      rtl/linux/sparc64/bsyscall.inc

+ 6 - 7
rtl/linux/sparc64/bsyscall.inc

@@ -12,7 +12,6 @@
 
  **********************************************************************}
 
-
 {$define FPC_BASEUNIX_HAS_FPPIPE}
 Function fppipe(var fildes : tfildes):cint;assembler;
 {
@@ -21,15 +20,15 @@ Function fppipe(var fildes : tfildes):cint;assembler;
 }
 asm
         mov     42,%g1
-        mov     %i0,%o0        
-        ta      0x10
-        bcc     .LSyscOK
+        mov     %i0,%o0
+        ta      0x6d
+        bcc     %xcc,.LSyscOK
         nop
         call    fpseterrno
         nop
-        mov     -1,%i0
-        b	.Lend
-        nop
+        b       .Lend
+        { use delay slot }
+        mov     -1,%o0
 .LSyscOK:
         st      %o0,[%i0]
         st      %o1,[%i0+4]