summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES2
-rw-r--r--emu/Linux/asm-arm.S12
-rw-r--r--include/version.h2
3 files changed, 9 insertions, 7 deletions
diff --git a/CHANGES b/CHANGES
index 5588f27c..a2d512ba 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,5 @@
+20110426
+ emu/Linux/asm-arm.S linux system call interface changed [issue 215, mechiel]
20110419
libinterp/tk.c:/^Tk_rect shouldn't return non-canonical rectangles
/appl/wm/mand.b handle reshape to empty rectangles
diff --git a/emu/Linux/asm-arm.S b/emu/Linux/asm-arm.S
index d13bcd0e..4d8cc01d 100644
--- a/emu/Linux/asm-arm.S
+++ b/emu/Linux/asm-arm.S
@@ -26,16 +26,14 @@ executeonnewstack:
blx r1 /* call tramp*/
/* if we return here, tramp didn't do it's job */
- swi SYS_exit
+ mov r0, #0
+ mov r7, #SYS_exit
+ swi 0x0
ldmea fp, {fp, sp, pc}
.size executeonnewstack, .-executeonnewstack
/*
* void unlockandexit(int *key)
- *
- * NB: the return status may be garbaged if the stack is reused
- * between the unlock and the system call, but this should
- * not matter since no task is waiting for the result
*/
.align 2
@@ -50,7 +48,9 @@ unlockandexit:
sub sp, sp, #4
mov r1, #0
str r1, [r0]
- swi SYS_exit
+ mov r0, #0
+ mov r7, #SYS_exit
+ swi 0x0
ldmea fp, {fp, sp, pc}
.size unlockandexit, .-unlockandexit
diff --git a/include/version.h b/include/version.h
index ee827d4a..a736ae91 100644
--- a/include/version.h
+++ b/include/version.h
@@ -1 +1 @@
-#define VERSION "Fourth Edition (20110419)"
+#define VERSION "Fourth Edition (20110426)"