aboutsummaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
Diffstat (limited to 'newlib')
-rw-r--r--newlib/ChangeLog5
-rw-r--r--newlib/libc/machine/mn10300/setjmp.S18
2 files changed, 15 insertions, 8 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 2f9a2b5..32b8567 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,8 @@
+Thu Apr 27 07:45:48 2000 Alexandre Oliva <aoliva@cygnus.com>
+
+ * libc/machine/mn10300/setjmp.S (setjmp, longjmp): Use
+ post-increment when it is worth it, spacewise.
+
Mon Apr 17 12:46:00 2000 Marek Michalkiewicz <marekm@linux.org.pl>
* libc/signal/signal.c (_signal_r) : Removed unused local variable temp.
diff --git a/newlib/libc/machine/mn10300/setjmp.S b/newlib/libc/machine/mn10300/setjmp.S
index 006aa3e..a95f12c 100644
--- a/newlib/libc/machine/mn10300/setjmp.S
+++ b/newlib/libc/machine/mn10300/setjmp.S
@@ -17,10 +17,11 @@ _setjmp:
mov sp,a1
mov a1,(20,a0)
#ifdef __AM33__
- mov r4,(24,a0)
- mov r5,(28,a0)
- mov r6,(32,a0)
- mov r7,(36,a0)
+ add 24,a0
+ mov r4,(a0+)
+ mov r5,(a0+)
+ mov r6,(a0+)
+ mov r7,(a0+)
#endif
sub d0,d0
rets
@@ -37,10 +38,11 @@ _longjmp:
mov (20,a0),a1
mov a1,sp
#ifdef __AM33__
- mov (24,a0),r4
- mov (28,a0),r5
- mov (32,a0),r6
- mov (36,a0),r7
+ add 24,a0
+ mov (a0+),r4
+ mov (a0+),r5
+ mov (a0+),r6
+ mov (a0+),r7
#endif
cmp 0,d1
bne L1