diff options
| author | Craig Topper <craig.topper@gmail.com> | 2017-04-09 06:12:34 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2017-04-09 06:12:34 +0000 |
| commit | 437c97622b8d7b576f270b807e493bc076f36767 (patch) | |
| tree | 8d54127ed4eee1dede278a25e403fd12efd1af86 /llvm/lib | |
| parent | 9d1821b262e682665a7c1d626e7a12427bde34f9 (diff) | |
| download | bcm5719-llvm-437c97622b8d7b576f270b807e493bc076f36767.tar.gz bcm5719-llvm-437c97622b8d7b576f270b807e493bc076f36767.zip | |
[InstCombine] Use the SubOne helper function to shorten some code. NFC
llvm-svn: 299819
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp index 87d2ac1abe1..62fad853908 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp @@ -2467,9 +2467,8 @@ Instruction *InstCombiner::visitXor(BinaryOperator &I) { if (Op0I->getOpcode() == Instruction::Sub && RHSC->isAllOnesValue()) if (Constant *Op0I0C = dyn_cast<Constant>(Op0I->getOperand(0))) { Constant *NegOp0I0C = ConstantExpr::getNeg(Op0I0C); - Constant *ConstantRHS = ConstantExpr::getSub(NegOp0I0C, - ConstantInt::get(I.getType(), 1)); - return BinaryOperator::CreateAdd(Op0I->getOperand(1), ConstantRHS); + return BinaryOperator::CreateAdd(Op0I->getOperand(1), + SubOne(NegOp0I0C)); } if (ConstantInt *Op0CI = dyn_cast<ConstantInt>(Op0I->getOperand(1))) { @@ -2477,10 +2476,8 @@ Instruction *InstCombiner::visitXor(BinaryOperator &I) { // ~(X-c) --> (-c-1)-X if (RHSC->isAllOnesValue()) { Constant *NegOp0CI = ConstantExpr::getNeg(Op0CI); - return BinaryOperator::CreateSub( - ConstantExpr::getSub(NegOp0CI, - ConstantInt::get(I.getType(), 1)), - Op0I->getOperand(0)); + return BinaryOperator::CreateSub(SubOne(NegOp0CI), + Op0I->getOperand(0)); } else if (RHSC->getValue().isSignBit()) { // (X + C) ^ signbit -> (X + C + signbit) Constant *C = Builder->getInt(RHSC->getValue() + Op0CI->getValue()); |

