diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2015-07-10 14:02:02 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2015-07-10 14:02:02 +0000 |
commit | f4ebfa3ae143e67c9e3f83aa657b828eb7632f08 (patch) | |
tree | 604a2907de239a7ff1373f1a012499c8a8206b3c /llvm/lib/Transforms | |
parent | b9a52814bf80e64583b13a137ed4a7768b2fa460 (diff) | |
download | bcm5719-llvm-f4ebfa3ae143e67c9e3f83aa657b828eb7632f08.tar.gz bcm5719-llvm-f4ebfa3ae143e67c9e3f83aa657b828eb7632f08.zip |
[InstSimplify] Fold away ord/uno fcmps when nnan is present.
This is important to fold away the slow case of complex multiplies
emitted by clang.
llvm-svn: 241911
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r-- | llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp index 010b7b57c3e..0bd6fd2f226 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp @@ -3928,8 +3928,8 @@ Instruction *InstCombiner::visitFCmpInst(FCmpInst &I) { Value *Op0 = I.getOperand(0), *Op1 = I.getOperand(1); - if (Value *V = - SimplifyFCmpInst(I.getPredicate(), Op0, Op1, DL, TLI, DT, AC, &I)) + if (Value *V = SimplifyFCmpInst(I.getPredicate(), Op0, Op1, + I.getFastMathFlags(), DL, TLI, DT, AC, &I)) return ReplaceInstUsesWith(I, V); // Simplify 'fcmp pred X, X' |