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
This commit is contained in:
Reid Spencer 2004-12-23 21:13:26 +00:00
parent ee93c874aa
commit 1e296bf046

View File

@ -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() &&