aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2004-06-07 01:53:43 +0000
committerH. Peter Anvin <hpa@zytor.com>2004-06-07 01:53:43 +0000
commit9b1e05361d419a144ec5d100f91197ae5772d866 (patch)
tree44d210d8f86e1c216cb22386c02632db0d0f0d43
parente736fc1c6d148002aa0a9b33d666b0a53b5c81be (diff)
downloadklibc-9b1e05361d419a144ec5d100f91197ae5772d866.tar.gz
Something closer to how I *think* things are supposed to work...klibc-0.118
-rw-r--r--klibc/arch/alpha/syscall.S6
-rw-r--r--klibc/arch/alpha/sysdual.S8
2 files changed, 7 insertions, 7 deletions
diff --git a/klibc/arch/alpha/syscall.S b/klibc/arch/alpha/syscall.S
index 37c2ae9295baa..ae7e7d22ba1e8 100644
--- a/klibc/arch/alpha/syscall.S
+++ b/klibc/arch/alpha/syscall.S
@@ -12,10 +12,10 @@
__syscall_common:
callsys
beq a3, 1f
- ldah a1, errno(zero)
+ ldq a1, errno(gp) !literal
lda v0, -1(zero)
- stq a3, errno(a1)
-1:
+ stq a3, 0(a1)
+1:
ret zero,(ra),1
.size __syscall_common,.-__syscall_common
diff --git a/klibc/arch/alpha/sysdual.S b/klibc/arch/alpha/sysdual.S
index 6c9cf51cf6e08..4a41740832888 100644
--- a/klibc/arch/alpha/sysdual.S
+++ b/klibc/arch/alpha/sysdual.S
@@ -17,12 +17,12 @@
.globl __syscall_dual1
__syscall_dual1:
callsys
- lda v0, 0(a4)
+ mov v0, a4
beq a3, 1f
- ldah a1, errno(zero)
+ ldq a1, errno(gp) !literal
lda v0, -1(zero)
- stq a3, errno(a1)
-1:
+ stq a3, 0(a1)
+1:
ret zero,(ra),1
.size __syscall_dual1,.-__syscall_dual1