summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/h8300/vfork.S
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2004-07-15 07:34:00 +0000
committerEric Andersen <andersen@codepoet.org>2004-07-15 07:34:00 +0000
commit71150804d1ac8ed2f7b9c6d3025fd415c58b129e (patch)
treeaab8c892a813847614070f73e711178cd3c9ec74 /libc/sysdeps/linux/h8300/vfork.S
parent255fbb6abcef56c5f8c36383d49a902686f258f5 (diff)
h8300 updates from Yoshinori Sato
Diffstat (limited to 'libc/sysdeps/linux/h8300/vfork.S')
-rw-r--r--libc/sysdeps/linux/h8300/vfork.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/h8300/vfork.S b/libc/sysdeps/linux/h8300/vfork.S
index e84a78d6a..e101bf5ed 100644
--- a/libc/sysdeps/linux/h8300/vfork.S
+++ b/libc/sysdeps/linux/h8300/vfork.S
@@ -28,7 +28,12 @@ _vfork:
jmp @er1 /* don't return, just jmp directly */
fix_errno:
neg.l er0
+#if !defined(__PIC__)
mov.l er0,@_errno
+#else
+ mov.l @(_errno@GOTOFF,er5),er2
+ mov.l er0,@er2
+#endif
sub.l er0,er0
dec.l #1,er0
jmp @er1 /* don't return, just jmp directly */