Do one map lookup instead of two.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104645 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2010-05-25 21:59:42 +00:00
parent 5b71dcedf0
commit eddc114a66

View File

@ -99,8 +99,9 @@ unsigned FastISel::getRegForValue(const Value *V) {
// cache values defined by Instructions across blocks, and other values
// only locally. This is because Instructions already have the SSA
// def-dominates-use requirement enforced.
if (ValueMap.count(V))
return ValueMap[V];
DenseMap<const Value *, unsigned>::iterator I = ValueMap.find(V);
if (I != ValueMap.end())
return I->second;
unsigned Reg = LocalValueMap[V];
if (Reg != 0)
return Reg;