[PATCH] D37030: Fix ARMv4 support
Joerg Sonnenberger via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 22 15:11:56 PDT 2017
joerg created this revision.
Herald added subscribers: kristof.beyls, javed.absar, srhines, aemerson.
ARMv4 doesn't support the "BX" instruction, which has been introduced with ARMv4t. Adjust the call lowering and tail call implementation accordingly.
Further changes are necessary to ensure that presence of the v4t feature is correctly set. Most importantly, the "generic" CPU for thumb-* triples should include ARMv4t, since thumb mode without thumb support would naturally be pointless.
Add a couple of asserts to ensure thumb instructions are not emitted without CPU support.
Repository:
rL LLVM
https://reviews.llvm.org/D37030
Files:
lib/Target/ARM/ARMAsmPrinter.cpp
lib/Target/ARM/ARMCallLowering.cpp
lib/Target/ARM/ARMExpandPseudoInsts.cpp
lib/Target/ARM/ARMFastISel.cpp
lib/Target/ARM/ARMFrameLowering.cpp
lib/Target/ARM/ARMInstrInfo.td
lib/Target/ARM/ARMLoadStoreOptimizer.cpp
lib/Target/ARM/ARMSubtarget.h
lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
test/CodeGen/ARM/armv4.ll
test/CodeGen/ARM/debug-segmented-stacks.ll
test/CodeGen/ARM/segmented-stacks-dynamic.ll
test/CodeGen/ARM/segmented-stacks.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37030.112238.patch
Type: text/x-patch
Size: 10730 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170822/ef2e604e/attachment.bin>
More information about the llvm-commits
mailing list