aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/TargetMachine.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-05-23 06:39:12 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-05-23 06:39:12 +0000
commit95942d76f4fdd1191febf1aa2b612fce6351ab3b (patch)
tree7276d8cbd20058d1b7225a4da19c59afb211bcbc /lib/Target/TargetMachine.cpp
parent4b442b528a50ef06cd75f0e7c41ad57426175bcc (diff)
Added option -enable-finite-only-fp-math. When on, the codegen can assume that
FP arithmetic arguments and results are never NaNs or +=Infs. This includes ignoring parity flag (PF) when checking for FP equality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28432 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/TargetMachine.cpp')
-rw-r--r--lib/Target/TargetMachine.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp
index 24e1e5a547..28f3ae88a7 100644
--- a/lib/Target/TargetMachine.cpp
+++ b/lib/Target/TargetMachine.cpp
@@ -26,6 +26,7 @@ namespace llvm {
bool NoFramePointerElim;
bool NoExcessFPPrecision;
bool UnsafeFPMath;
+ bool FiniteOnlyFPMath;
Reloc::Model RelocationModel;
};
namespace {
@@ -48,6 +49,11 @@ namespace {
cl::desc("Enable optimizations that may decrease FP precision"),
cl::location(UnsafeFPMath),
cl::init(false));
+ cl::opt<bool, true>
+ EnableFiniteOnltFPMath("enable-finite-only-fp-math",
+ cl::desc("Enable optimizations that assumes non- NaNs / +-Infs"),
+ cl::location(FiniteOnlyFPMath),
+ cl::init(false));
cl::opt<llvm::Reloc::Model, true>
DefRelocationModel(
"relocation-model",