diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-12-23 21:13:26 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-12-23 21:13:26 +0000 |
commit | 1e296bf046bc7868fa6b76b32a1404d166bb3a47 (patch) | |
tree | e461388498419bacd585be44eb50dd67bdf56cb1 /lib/Analysis/ValueNumbering.cpp | |
parent | ee93c874aa6018e0189df0a8d5b10197c6085d93 (diff) |
Try to speed up gccld hot spot in BasicVN::getEqualNumberNodes by making
a function call at the core of the loop inline and removing unused
stack variables from an often called function. This doesn't improve things
much, the real saving will be by reducing the number of calls to this
function (100K+ when linking kimwitu++).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19119 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/ValueNumbering.cpp')
-rw-r--r-- | lib/Analysis/ValueNumbering.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/Analysis/ValueNumbering.cpp b/lib/Analysis/ValueNumbering.cpp index 49b75bd6ac..2e1174b69e 100644 --- a/lib/Analysis/ValueNumbering.cpp +++ b/lib/Analysis/ValueNumbering.cpp @@ -145,8 +145,7 @@ static inline bool isIdenticalBinaryInst(const Instruction &I1, } void BVNImpl::handleBinaryInst(Instruction &I) { - Value *LHS = I.getOperand(0), *RHS = I.getOperand(1); - Function *F = I.getParent()->getParent(); + Value *LHS = I.getOperand(0); for (Value::use_iterator UI = LHS->use_begin(), UE = LHS->use_end(); UI != UE; ++UI) @@ -162,7 +161,7 @@ void BVNImpl::handleBinaryInst(Instruction &I) { // using a brute force comparison. This is useful for instructions with an // arbitrary number of arguments. // -static bool IdenticalComplexInst(const Instruction *I1, const Instruction *I2) { +static inline bool IdenticalComplexInst(const Instruction *I1, const Instruction *I2) { assert(I1->getOpcode() == I2->getOpcode()); // Equal if they are in the same function... return I1->getParent()->getParent() == I2->getParent()->getParent() && |