diff options
author | Evan Cheng <evan.cheng@apple.com> | 2011-04-07 00:58:44 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2011-04-07 00:58:44 +0000 |
commit | a7c7b54dde5aa7fc37c5ceb70ab7c7ea3d77de0d (patch) | |
tree | 6b0bd75731330c5a20a60fbf0c8ede02a1e2265b /llvm/lib/Target | |
parent | b7c9c407f9e37ee0c83c1466024b8739492ff315 (diff) | |
download | bcm5719-llvm-a7c7b54dde5aa7fc37c5ceb70ab7c7ea3d77de0d.tar.gz bcm5719-llvm-a7c7b54dde5aa7fc37c5ceb70ab7c7ea3d77de0d.zip |
Change -arm-divmod-libcall to a target neutral option.
llvm-svn: 129045
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/ARM/ARMISelLowering.cpp | 7 | ||||
-rw-r--r-- | llvm/lib/Target/TargetMachine.cpp | 6 |
2 files changed, 7 insertions, 6 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp index 6ff57522f0e..d030f68528e 100644 --- a/llvm/lib/Target/ARM/ARMISelLowering.cpp +++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp @@ -72,11 +72,6 @@ ARMInterworking("arm-interworking", cl::Hidden, cl::desc("Enable / disable ARM interworking (for debugging only)"), cl::init(true)); -static cl::opt<bool> -UseDivMod("arm-divmod-libcall", cl::Hidden, - cl::desc("Use __{u}divmod libcalls for div / rem pairs"), - cl::init(false)); - void ARMTargetLowering::addTypeForNEON(EVT VT, EVT PromotedLdStVT, EVT PromotedBitwiseVT) { if (VT != PromotedLdStVT) { @@ -398,7 +393,7 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM) setLibcallCallingConv(RTLIB::UDIV_I32, CallingConv::ARM_AAPCS); } - if (UseDivMod) { + if (HasDivModLibcall) { setLibcallName(RTLIB::SDIVREM_I32, "__divmodsi4"); setLibcallName(RTLIB::UDIVREM_I32, "__udivmodsi4"); } diff --git a/llvm/lib/Target/TargetMachine.cpp b/llvm/lib/Target/TargetMachine.cpp index 681842ea6b6..8c7330a77c7 100644 --- a/llvm/lib/Target/TargetMachine.cpp +++ b/llvm/lib/Target/TargetMachine.cpp @@ -48,6 +48,7 @@ namespace llvm { bool RealignStack; bool DisableJumpTables; bool StrongPHIElim; + bool HasDivModLibcall; bool AsmVerbosityDefault(false); } @@ -205,6 +206,11 @@ EnableStrongPHIElim(cl::Hidden, "strong-phi-elim", cl::desc("Use strong PHI elimination."), cl::location(StrongPHIElim), cl::init(false)); +static cl::opt<bool, true> +UseDivMod("use-divmod-libcall", + cl::desc("Use __{u}divmod libcalls for div / rem pairs"), + cl::location(HasDivModLibcall), + cl::init(false)); static cl::opt<bool> DataSections("fdata-sections", cl::desc("Emit data into separate sections"), |