[Builtins] Do not use tailcall for Thumb1
authorWeiming Zhao <weimingz@codeaurora.org>
Thu, 9 Nov 2017 17:32:57 +0000 (17:32 +0000)
committerWeiming Zhao <weimingz@codeaurora.org>
Thu, 9 Nov 2017 17:32:57 +0000 (17:32 +0000)
commite58bb5dc4e9aebf0ddc19b1c7b236250132887d6
tree10e77ca8ca062dbf3158d4702cd9507991014870
parent5d7edca316fd09377336e6ac0493ffb3e6629e7f
[Builtins] Do not use tailcall for Thumb1

Summary:
The `b` instruction in Thumb1 has limited range, which may cause link-time errors if the jump target is far away.
This patch guards the tailcalls for non-Thumb1

Reviewers: peter.smith, compnerd, rengolin, eli.friedman

Reviewed By: rengolin

Subscribers: joerg, dalias, javed.absar, llvm-commits

Differential Revision: https://reviews.llvm.org/D39700

llvm-svn: 317814
compiler-rt/lib/builtins/arm/aeabi_memcmp.S
compiler-rt/lib/builtins/arm/aeabi_memcpy.S
compiler-rt/lib/builtins/arm/aeabi_memmove.S
compiler-rt/lib/builtins/arm/aeabi_memset.S