summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/Target.td5
-rw-r--r--llvm/lib/Target/TargetMachine.cpp1
2 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/Target.td b/llvm/lib/Target/Target.td
index fce45a5c2d4..938e4cdc8fb 100644
--- a/llvm/lib/Target/Target.td
+++ b/llvm/lib/Target/Target.td
@@ -210,6 +210,11 @@ class Predicate<string cond> {
string CondString = cond;
}
+/// NoHonorSignDependentRounding - This predicate is true if support for
+/// sign-dependent-rounding is not enabled.
+def NoHonorSignDependentRounding
+ : Predicate<"!HonorSignDependentRoundingFPMath()">;
+
class Requires<list<Predicate> preds> {
list<Predicate> Predicates = preds;
}
diff --git a/llvm/lib/Target/TargetMachine.cpp b/llvm/lib/Target/TargetMachine.cpp
index b79b87b4794..6c00a3f492b 100644
--- a/llvm/lib/Target/TargetMachine.cpp
+++ b/llvm/lib/Target/TargetMachine.cpp
@@ -27,6 +27,7 @@ namespace llvm {
bool NoExcessFPPrecision;
bool UnsafeFPMath;
bool FiniteOnlyFPMathOption;
+ bool HonorSignDependentRoundingFPMathOption;
bool UseSoftFloat;
bool NoZerosInBSS;
bool ExceptionHandling;
OpenPOWER on IntegriCloud