diff options
author | Chris Lattner <sabre@nondot.org> | 2007-05-03 00:16:07 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-05-03 00:16:07 +0000 |
commit | 6ac3a37fb6b9189e2e6d464c241757c18d6ac161 (patch) | |
tree | 8fcd0853179863541b00a8059d18fdb7f2777707 /llvm/lib/Target/TargetMachine.cpp | |
parent | b5ce7c546656ddbdca921dadfb970a3bbbd7cbce (diff) | |
download | bcm5719-llvm-6ac3a37fb6b9189e2e6d464c241757c18d6ac161.tar.gz bcm5719-llvm-6ac3a37fb6b9189e2e6d464c241757c18d6ac161.zip |
Add a new option.
llvm-svn: 36657
Diffstat (limited to 'llvm/lib/Target/TargetMachine.cpp')
-rw-r--r-- | llvm/lib/Target/TargetMachine.cpp | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/llvm/lib/Target/TargetMachine.cpp b/llvm/lib/Target/TargetMachine.cpp index 4e7048253a9..b79b87b4794 100644 --- a/llvm/lib/Target/TargetMachine.cpp +++ b/llvm/lib/Target/TargetMachine.cpp @@ -54,20 +54,27 @@ namespace { cl::location(UnsafeFPMath), cl::init(false)); cl::opt<bool, true> - EnableFiniteOnltFPMath("enable-finite-only-fp-math", + EnableFiniteOnlyFPMath("enable-finite-only-fp-math", cl::desc("Enable optimizations that assumes non- NaNs / +-Infs"), cl::location(FiniteOnlyFPMathOption), cl::init(false)); cl::opt<bool, true> + EnableHonorSignDependentRoundingFPMath(cl::Hidden, + "enable-sign-dependent-rounding-fp-math", + cl::desc("Force codegen to assume rounding mode can change dynamically"), + cl::location(HonorSignDependentRoundingFPMathOption), + cl::init(false)); + + cl::opt<bool, true> GenerateSoftFloatCalls("soft-float", cl::desc("Generate software floating point library calls"), cl::location(UseSoftFloat), cl::init(false)); cl::opt<bool, true> DontPlaceZerosInBSS("nozero-initialized-in-bss", - cl::desc("Don't place zero-initialized symbols into bss section"), - cl::location(NoZerosInBSS), - cl::init(false)); + cl::desc("Don't place zero-initialized symbols into bss section"), + cl::location(NoZerosInBSS), + cl::init(false)); cl::opt<bool, true> EnableExceptionHandling("enable-eh", cl::desc("Exception handling should be emitted."), @@ -146,5 +153,11 @@ namespace llvm { /// the code generator is not allowed to assume that FP arithmetic arguments /// and results are never NaNs or +-Infs. bool FiniteOnlyFPMath() { return UnsafeFPMath || FiniteOnlyFPMathOption; } + + /// HonorSignDependentRoundingFPMath - Return true if the codegen must assume + /// that the rounding mode of the FPU can change from its default. + bool HonorSignDependentRoundingFPMath() { + return !UnsafeFPMath && HonorSignDependentRoundingFPMathOption; + } } |