diff options
author | Cameron McInally <cameron.mcinally@nyu.edu> | 2019-05-20 13:13:35 +0000 |
---|---|---|
committer | Cameron McInally <cameron.mcinally@nyu.edu> | 2019-05-20 13:13:35 +0000 |
commit | 2d2a46db8e47f8708a817ffd4cda7faace29b445 (patch) | |
tree | cd66be1b7dc942b15397b06d4ac89ac0ba0209a7 /llvm/lib/Analysis/InstructionSimplify.cpp | |
parent | a2fbe2bcda3d820d1a249902406f6f21cf9e9039 (diff) | |
download | llvm-2d2a46db8e47f8708a817ffd4cda7faace29b445.zip llvm-2d2a46db8e47f8708a817ffd4cda7faace29b445.tar.gz llvm-2d2a46db8e47f8708a817ffd4cda7faace29b445.tar.bz2 |
[InstSimplify] Teach fsub -0.0, (fneg X) ==> X about unary fneg
Differential Revision: https://reviews.llvm.org/D62077
llvm-svn: 361151
Diffstat (limited to 'llvm/lib/Analysis/InstructionSimplify.cpp')
-rw-r--r-- | llvm/lib/Analysis/InstructionSimplify.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/InstructionSimplify.cpp b/llvm/lib/Analysis/InstructionSimplify.cpp index f97daec..e7f96b1 100644 --- a/llvm/lib/Analysis/InstructionSimplify.cpp +++ b/llvm/lib/Analysis/InstructionSimplify.cpp @@ -4404,9 +4404,10 @@ static Value *SimplifyFSubInst(Value *Op0, Value *Op1, FastMathFlags FMF, return Op0; // fsub -0.0, (fsub -0.0, X) ==> X + // fsub -0.0, (fneg X) ==> X Value *X; if (match(Op0, m_NegZeroFP()) && - match(Op1, m_FSub(m_NegZeroFP(), m_Value(X)))) + match(Op1, m_FNeg(m_Value(X)))) return X; // fsub 0.0, (fsub 0.0, X) ==> X if signed zeros are ignored. |