]> sourceware.org Git - newlib-cygwin.git/commitdiff
2014-12-12 Stefan Wallentowitz <stefan.wallentowitz@tum.de>
authorJeff Johnston <jjohnstn@redhat.com>
Fri, 12 Dec 2014 20:17:26 +0000 (20:17 +0000)
committerJeff Johnston <jjohnstn@redhat.com>
Fri, 12 Dec 2014 20:17:26 +0000 (20:17 +0000)
        * libc/machine/or1k/setjmp.S: Remove save/restore of r3-r8

newlib/ChangeLog
newlib/libc/machine/or1k/setjmp.S

index 8a2536d3e954ab11fe9d0719f7f6840abfae3c5e..25815407530595a6cef61000eba81839496b5ce9 100644 (file)
@@ -1,3 +1,7 @@
+2014-12-12  Stefan Wallentowitz  <stefan.wallentowitz@tum.de>
+
+       * libc/machine/or1k/setjmp.S: Remove save/restore of r3-r8
+
 2014-12-11  Jonathan Roelofs  <jonathan@codesourcery.com>
            Corinna Vinschen  <vinschen@redhat.com>
 
index 2fbf15d0fdea64ed2134014d81f5be0d01d33721..13ccf8a07dfc37efb354d2df5378f552467af38b 100644 (file)
@@ -31,12 +31,7 @@ setjmp:
 
        l.sw    4(r3), r1
        l.sw    8(r3), r2
-       l.sw    12(r3), r3
-       l.sw    16(r3), r4
-       l.sw    20(r3), r5
-       l.sw    24(r3), r6
-       l.sw    28(r3), r7
-       l.sw    32(r3), r8
+       /* Skip r3-r8 as they are not preserved across function calls */
        l.sw    36(r3), r9
        /* Skip r10 as it's preserved to be used by TLS */ 
        /* Skip r11, setjmp always set it to 0 */
@@ -77,12 +72,7 @@ longjmp:
 
        l.lwz   r1, 4(r3)
        l.lwz   r2, 8(r3)
-       /* Skip r3 as it contains the current buffer address */
-       l.lwz   r4, 16(r3)
-       l.lwz   r5, 20(r3)
-       l.lwz   r6, 24(r3)
-       l.lwz   r7, 28(r3)
-       l.lwz   r8, 32(r3)
+       /* Skip r3-r8 as they are not preserved across function calls */
        l.lwz   r9, 36(r3)
        /* Skip r11 as it's always set by longjmp */
        l.lwz   r14, 52(r3)
@@ -94,7 +84,6 @@ longjmp:
        l.lwz   r26, 100(r3)
        l.lwz   r28, 108(r3)
        l.lwz   r30, 116(r3)
-       l.lwz   r3, 12(r3)
 
        l.jr    r9
        l.nop
This page took 0.05753 seconds and 5 git commands to generate.