From b678f7b46a614ca8985b3ef662d96036e06e8810 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Wed, 25 Sep 2019 19:34:25 +0100 Subject: arm: fix setjmp and longjmp asm for armv8-a armv8 removed the coprocessor instructions other than cp14, so on an armv8 system the related hwcaps should never be set. new llvm complains about the use of coprocessor instructions in armv8-a mode (even though they are never executed at runtime), so ifdef them out when musl is built for armv8. --- src/setjmp/arm/setjmp.s | 45 --------------------------------------------- 1 file changed, 45 deletions(-) delete mode 100644 src/setjmp/arm/setjmp.s (limited to 'src/setjmp/arm/setjmp.s') diff --git a/src/setjmp/arm/setjmp.s b/src/setjmp/arm/setjmp.s deleted file mode 100644 index 011315b7..00000000 --- a/src/setjmp/arm/setjmp.s +++ /dev/null @@ -1,45 +0,0 @@ -.syntax unified -.global __setjmp -.global _setjmp -.global setjmp -.type __setjmp,%function -.type _setjmp,%function -.type setjmp,%function -__setjmp: -_setjmp: -setjmp: - mov ip,r0 - stmia ip!,{v1,v2,v3,v4,v5,v6,sl,fp} - mov r2,sp - stmia ip!,{r2,lr} - mov r0,#0 - - adr r1,1f - ldr r2,1f - ldr r1,[r1,r2] - - tst r1,#0x260 - beq 3f - tst r1,#0x20 - beq 2f - stc p2, cr4, [ip], #48 -2: tst r1,#0x40 - beq 2f - .fpu vfp - vstmia ip!, {d8-d15} - .fpu softvfp - .eabi_attribute 10, 0 - .eabi_attribute 27, 0 -2: tst r1,#0x200 - beq 3f - stcl p1, cr10, [ip], #8 - stcl p1, cr11, [ip], #8 - stcl p1, cr12, [ip], #8 - stcl p1, cr13, [ip], #8 - stcl p1, cr14, [ip], #8 - stcl p1, cr15, [ip], #8 -3: bx lr - -.hidden __hwcap -.align 2 -1: .word __hwcap-1b -- cgit v1.2.1