mips/setjmp.S: don't save and restore floating-point registers
authorYunQiang Su <wzssyqa@gmail.com>
Sat, 5 Sep 2015 13:39:25 +0000 (06:39 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Sun, 8 May 2016 20:59:37 +0000 (20:59 +0000)
Klibc FTBFS with '-mno-odd-spreg' on mips32(el) platforms,
As it try to save/restore odd-number FPR.

Indeed no other architectures save/restore FPR at all.
It shouldn't be needed.

Gbp-Pq: Name klibc-mips-setjmp-s-don-t-save-and-restore-floating-point.patch

usr/klibc/arch/mips/setjmp.S

index 68eed19d32867f0ba0bc6061df373f7fd93b27b6..21e41151dd419822f4ec4e6f5a708c21df7a7a01 100644 (file)
@@ -29,18 +29,6 @@ LEAF(setjmp)
        sw      s8, 40(a0)
        sw      ra, 44(a0)
        cfc1    t0,$31
-       swc1    $f20,48(a0)
-       swc1    $f21,52(a0)
-       swc1    $f22,56(a0)
-       swc1    $f23,60(a0)
-       swc1    $f24,64(a0)
-       swc1    $f25,68(a0)
-       swc1    $f26,72(a0)
-       swc1    $f27,76(a0)
-       swc1    $f28,80(a0)
-       swc1    $f29,84(a0)
-       swc1    $f30,88(a0)
-       swc1    $f31,92(a0)
        sw      t0,96(a0)
        move    v0,zero
        jr      ra
@@ -61,18 +49,6 @@ LEAF(longjmp)
        lw      s8, 40(a0)
        lw      ra, 44(a0)
        lw      t0, 96(a0)
-       lwc1    $f20,48(a0)
-       lwc1    $f21,52(a0)
-       lwc1    $f22,56(a0)
-       lwc1    $f23,60(a0)
-       lwc1    $f24,64(a0)
-       lwc1    $f25,68(a0)
-       lwc1    $f26,72(a0)
-       lwc1    $f27,76(a0)
-       lwc1    $f28,80(a0)
-       lwc1    $f29,84(a0)
-       lwc1    $f30,88(a0)
-       lwc1    $f31,92(a0)
        ctc1    t0,$31
        move    v0,a1
        jr      ra