diff options
| author | Dan Gohman <gohman@apple.com> | 2008-06-18 16:37:11 +0000 |
|---|---|---|
| committer | Dan Gohman <gohman@apple.com> | 2008-06-18 16:37:11 +0000 |
| commit | 095ca74a7f2c99649edc1999156025daeba83df8 (patch) | |
| tree | 2482893f4ecf2c3cbc0add2c33aff05c2a590992 /llvm | |
| parent | be928e3b21858a97911277b5b034f6e7a5a1aefc (diff) | |
| download | bcm5719-llvm-095ca74a7f2c99649edc1999156025daeba83df8.tar.gz bcm5719-llvm-095ca74a7f2c99649edc1999156025daeba83df8.zip | |
Move SCEVExpander::visitAddExpr out-of-line.
llvm-svn: 52464
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/Analysis/ScalarEvolutionExpander.h | 10 | ||||
| -rw-r--r-- | llvm/lib/Analysis/ScalarEvolutionExpander.cpp | 10 |
2 files changed, 11 insertions, 9 deletions
diff --git a/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h b/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h index 9a69b241651..7f990d6a7ee 100644 --- a/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h +++ b/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h @@ -111,15 +111,7 @@ namespace llvm { return CastInst::CreateSExtOrBitCast(V, S->getType(), "tmp.", InsertPt); } - Value *visitAddExpr(SCEVAddExpr *S) { - Value *V = expand(S->getOperand(S->getNumOperands()-1)); - - // Emit a bunch of add instructions - for (int i = S->getNumOperands()-2; i >= 0; --i) - V = InsertBinop(Instruction::Add, V, expand(S->getOperand(i)), - InsertPt); - return V; - } + Value *visitAddExpr(SCEVAddExpr *S); Value *visitMulExpr(SCEVMulExpr *S); diff --git a/llvm/lib/Analysis/ScalarEvolutionExpander.cpp b/llvm/lib/Analysis/ScalarEvolutionExpander.cpp index e7bc3f25d14..e32b21e623c 100644 --- a/llvm/lib/Analysis/ScalarEvolutionExpander.cpp +++ b/llvm/lib/Analysis/ScalarEvolutionExpander.cpp @@ -99,6 +99,16 @@ Value *SCEVExpander::InsertBinop(Instruction::BinaryOps Opcode, Value *LHS, return BinaryOperator::Create(Opcode, LHS, RHS, "tmp", InsertPt); } +Value *SCEVExpander::visitAddExpr(SCEVAddExpr *S) { + Value *V = expand(S->getOperand(S->getNumOperands()-1)); + + // Emit a bunch of add instructions + for (int i = S->getNumOperands()-2; i >= 0; --i) + V = InsertBinop(Instruction::Add, V, expand(S->getOperand(i)), + InsertPt); + return V; +} + Value *SCEVExpander::visitMulExpr(SCEVMulExpr *S) { int FirstOp = 0; // Set if we should emit a subtract. if (SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getOperand(0))) |

