[compiler-rt] r200397 - Support ARMv4 in the remaining non-VFP routines.
Joerg Sonnenberger
joerg at bec.de
Wed Jan 29 05:54:55 PST 2014
Author: joerg
Date: Wed Jan 29 07:54:54 2014
New Revision: 200397
URL: http://llvm.org/viewvc/llvm-project?rev=200397&view=rev
Log:
Support ARMv4 in the remaining non-VFP routines.
Modified:
compiler-rt/trunk/lib/arm/bswapdi2.S
compiler-rt/trunk/lib/arm/bswapsi2.S
compiler-rt/trunk/lib/arm/comparesf2.S
Modified: compiler-rt/trunk/lib/arm/bswapdi2.S
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/arm/bswapdi2.S?rev=200397&r1=200396&r2=200397&view=diff
==============================================================================
--- compiler-rt/trunk/lib/arm/bswapdi2.S (original)
+++ compiler-rt/trunk/lib/arm/bswapdi2.S Wed Jan 29 07:54:54 2014
@@ -16,7 +16,7 @@
//
.align 2
DEFINE_COMPILERRT_FUNCTION(__bswapdi2)
-#if __ARM_ARCH_5TEJ__ || __ARM_ARCH_4T__
+#if __ARM_ARCH < 6
// before armv6 does not have "rev" instruction
// r2 = rev(r0)
eor r2, r0, r0, ror #16
@@ -33,5 +33,5 @@ DEFINE_COMPILERRT_FUNCTION(__bswapdi2)
rev r0, r1 // r0 = rev(r1)
#endif
mov r1, r2 // r1 = r2 = rev(r0)
- bx lr
+ JMP(lr)
END_COMPILERRT_FUNCTION(__bswapdi2)
Modified: compiler-rt/trunk/lib/arm/bswapsi2.S
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/arm/bswapsi2.S?rev=200397&r1=200396&r2=200397&view=diff
==============================================================================
--- compiler-rt/trunk/lib/arm/bswapsi2.S (original)
+++ compiler-rt/trunk/lib/arm/bswapsi2.S Wed Jan 29 07:54:54 2014
@@ -16,7 +16,7 @@
//
.align 2
DEFINE_COMPILERRT_FUNCTION(__bswapsi2)
-#if __ARM_ARCH_5TEJ__ || __ARM_ARCH_4T__
+#if __ARM_ARCH < 6
// before armv6 does not have "rev" instruction
eor r1, r0, r0, ror #16
bic r1, r1, #0xff0000
@@ -25,5 +25,5 @@ DEFINE_COMPILERRT_FUNCTION(__bswapsi2)
#else
rev r0, r0
#endif
- bx lr
+ JMP(lr)
END_COMPILERRT_FUNCTION(__bswapsi2)
Modified: compiler-rt/trunk/lib/arm/comparesf2.S
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/arm/comparesf2.S?rev=200397&r1=200396&r2=200397&view=diff
==============================================================================
--- compiler-rt/trunk/lib/arm/comparesf2.S (original)
+++ compiler-rt/trunk/lib/arm/comparesf2.S Wed Jan 29 07:54:54 2014
@@ -99,7 +99,7 @@ DEFINE_COMPILERRT_FUNCTION(__eqsf2)
ite ls
cmpls r3, #0xff000000
movhi r0, #1
- bx lr
+ JMP(lr)
END_COMPILERRT_FUNCTION(__eqsf2)
DEFINE_COMPILERRT_FUNCTION_ALIAS(__lesf2, __eqsf2)
DEFINE_COMPILERRT_FUNCTION_ALIAS(__ltsf2, __eqsf2)
@@ -128,7 +128,7 @@ DEFINE_COMPILERRT_FUNCTION(__gtsf2)
ite ls
cmpls r3, #0xff000000
movhi r0, #-1
- bx lr
+ JMP(lr)
END_COMPILERRT_FUNCTION(__gtsf2)
DEFINE_COMPILERRT_FUNCTION_ALIAS(__gesf2, __gtsf2)
@@ -142,7 +142,7 @@ DEFINE_COMPILERRT_FUNCTION(__unordsf2)
ite ls
cmpls r3, #0xff000000
movhi r0, #1
- bx lr
+ JMP(lr)
END_COMPILERRT_FUNCTION(__unordsf2)
DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_fcmpun, __unordsf2)
More information about the llvm-commits
mailing list