use vfp mnemonics instead of p10 coprocessor ones in armhf fenv asm
authorSzabolcs Nagy <nsz@port70.net>
Thu, 5 Nov 2015 23:13:11 +0000 (18:13 -0500)
committerRich Felker <dalias@aerifal.cx>
Thu, 5 Nov 2015 23:14:39 +0000 (18:14 -0500)
mrc/mcr p10 coprocessor mnemonics are deprecated by some
toolchains.

src/fenv/armhf/fenv.s

index c1ffd2e..e447ca1 100644 (file)
@@ -3,17 +3,17 @@
 .global fegetround
 .type fegetround,%function
 fegetround:
-       mrc p10, 7, r0, cr1, cr0, 0
+       fmrx r0, fpscr
        and r0, r0, #0xc00000
        bx lr
 
 .global __fesetround
 .type __fesetround,%function
 __fesetround:
-       mrc p10, 7, r3, cr1, cr0, 0
+       fmrx r3, fpscr
        bic r3, r3, #0xc00000
        orr r3, r3, r0
-       mcr p10, 7, r3, cr1, cr0, 0
+       fmxr fpscr, r3
        mov r0, #0
        bx lr
 
@@ -21,7 +21,7 @@ __fesetround:
 .type fetestexcept,%function
 fetestexcept:
        and r0, r0, #0x1f
-       mrc p10, 7, r3, cr1, cr0, 0
+       fmrx r3, fpscr
        and r0, r0, r3
        bx lr
 
@@ -29,9 +29,9 @@ fetestexcept:
 .type feclearexcept,%function
 feclearexcept:
        and r0, r0, #0x1f
-       mrc p10, 7, r3, cr1, cr0, 0
+       fmrx r3, fpscr
        bic r3, r3, r0
-       mcr p10, 7, r3, cr1, cr0, 0
+       fmxr fpscr, r3
        mov r0, #0
        bx lr
 
@@ -39,16 +39,16 @@ feclearexcept:
 .type feraiseexcept,%function
 feraiseexcept:
        and r0, r0, #0x1f
-       mrc p10, 7, r3, cr1, cr0, 0
+       fmrx r3, fpscr
        orr r3, r3, r0
-       mcr p10, 7, r3, cr1, cr0, 0
+       fmxr fpscr, r3
        mov r0, #0
        bx lr
 
 .global fegetenv
 .type fegetenv,%function
 fegetenv:
-       mrc p10, 7, r3, cr1, cr0, 0
+       fmrx r3, fpscr
        str r3, [r0]
        mov r0, #0
        bx lr
@@ -59,6 +59,6 @@ fesetenv:
        cmn r0, #1
        moveq r3, #0
        ldrne r3, [r0]
-       mcr p10, 7, r3, cr1, cr0, 0
+       fmxr fpscr, r3
        mov r0, #0
        bx lr