@@ -2878,22 +2878,12 @@ Instruction *InstCombinerImpl::visitFNeg(UnaryOperator &I) {
2878
2878
2879
2879
// -(Cond ? X : C) --> Cond ? -X : -C
2880
2880
// -(Cond ? C : Y) --> Cond ? -C : -Y
2881
- Constant *XC = nullptr , *YC = nullptr ;
2882
- if (match (X, m_ImmConstant (XC)) || match (Y, m_ImmConstant (YC))) {
2883
- Value *NegX = nullptr , *NegY = nullptr ;
2884
- if (XC)
2885
- NegX = ConstantFoldUnaryOpOperand (Instruction::FNeg, XC, DL);
2886
- if (YC)
2887
- NegY = ConstantFoldUnaryOpOperand (Instruction::FNeg, YC, DL);
2888
- if (NegX || NegY) {
2889
- if (!NegX)
2890
- NegX = Builder.CreateFNegFMF (X, &I, X->getName () + " .neg" );
2891
- if (!NegY)
2892
- NegY = Builder.CreateFNegFMF (Y, &I, Y->getName () + " .neg" );
2893
- SelectInst *NewSel = SelectInst::Create (Cond, NegX, NegY);
2894
- propagateSelectFMF (NewSel, /* CommonOperand=*/ true );
2895
- return NewSel;
2896
- }
2881
+ if (match (X, m_ImmConstant ()) || match (Y, m_ImmConstant ())) {
2882
+ Value *NegX = Builder.CreateFNegFMF (X, &I, X->getName () + " .neg" );
2883
+ Value *NegY = Builder.CreateFNegFMF (Y, &I, Y->getName () + " .neg" );
2884
+ SelectInst *NewSel = SelectInst::Create (Cond, NegX, NegY);
2885
+ propagateSelectFMF (NewSel, /* CommonOperand=*/ true );
2886
+ return NewSel;
2897
2887
}
2898
2888
}
2899
2889
0 commit comments