[llvm] r188485 - make arm-reserve-r9 available for all ARM
Renato Golin
renato.golin at linaro.org
Thu Aug 15 13:45:13 PDT 2013
Author: rengolin
Date: Thu Aug 15 15:45:13 2013
New Revision: 188485
URL: http://llvm.org/viewvc/llvm-project?rev=188485&view=rev
Log:
make arm-reserve-r9 available for all ARM
r9 is defined as a platform-specific register in the ARM EABI.
It can be reserved for a special purpose or be used as a general
purpose register. Add support for reserving r9 for all ARM, while
leaving the IOS usage unchanged.
Patch by Jeroen Hofstee.
Modified:
llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp
Modified: llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp?rev=188485&r1=188484&r2=188485&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp Thu Aug 15 15:45:13 2013
@@ -169,9 +169,10 @@ void ARMSubtarget::resetSubtargetFeature
if (isAAPCS_ABI())
stackAlignment = 8;
- if (!isTargetIOS())
+ if (!isTargetIOS()) {
UseMovt = hasV6T2Ops();
- else {
+ IsR9Reserved = ReserveR9;
+ } else {
IsR9Reserved = ReserveR9 | !HasV6Ops;
UseMovt = DarwinUseMOVT && hasV6T2Ops();
SupportsTailCall = !getTargetTriple().isOSVersionLT(5, 0);
More information about the llvm-commits
mailing list