浏览代码

* fixed old syscall handling for ppc

Jonas Maebe 22 年之前
父节点
当前提交
52e51dddb1
共有 2 个文件被更改,包括 14 次插入8 次删除
  1. 7 6
      rtl/linux/powerpc/syscall.inc
  2. 7 2
      rtl/linux/syscallo.inc

+ 7 - 6
rtl/linux/powerpc/syscall.inc

@@ -172,14 +172,12 @@ asm
   lwz  r4, 8(r4)
 { Go ! }
   sc
-  nop
+  bns  Lsyscall_ok
+  neg  r3,r3
+Lsyscall_ok:
 { Put back the registers... }
   lwz    r8, regs
   stw    r3, 0(r8)
-  stw    r4, 4(r8)
-  stw    r5, 8(r8)
-  stw    r6, 12(r8)
-  stw    r7, 16(r8)
 end;
 
 {$IFDEF SYSCALL_DEBUG}
@@ -238,7 +236,10 @@ end;
 
 {
   $Log$
-  Revision 1.6  2003-05-23 21:58:30  jonas
+  Revision 1.7  2003-06-17 16:39:58  jonas
+    * fixed old syscall handling for ppc
+
+  Revision 1.6  2003/05/23 21:58:30  jonas
     * fixed storing to errno for single threaded programs
 
   Revision 1.5  2003/05/11 16:07:55  jonas

+ 7 - 2
rtl/linux/syscallo.inc

@@ -93,7 +93,9 @@ asm
   lwz  r4, 8(r4)
 { Go ! }
   sc
-  nop
+  bns  Lsyscallo_ok
+  neg  r3,r3
+Lsyscallo_ok:
 { Put back the registers... }
   lwz    r8, regs
   stw    r3, 0(r8)
@@ -184,7 +186,10 @@ end;
 
 {
   $Log$
-  Revision 1.3  2003-06-04 15:18:14  peter
+  Revision 1.4  2003-06-17 16:39:58  jonas
+    * fixed old syscall handling for ppc
+
+  Revision 1.3  2003/06/04 15:18:14  peter
     * compile fix for systhrds
 
   Revision 1.2  2003/04/22 17:07:55  florian