- AliasSet::HashNodePair &getEntryFor(Value *V) {
- // Standard operator[], except that it returns the whole pair, not just
- // ->second.
- return *PointerMap.insert(AliasSet::HashNodePair(V,
- AliasSet::PointerRec())).first;
+ // getEntryFor - Just like operator[] on the map, except that it creates an
+ // entry for the pointer if it doesn't already exist.
+ AliasSet::PointerRec &getEntryFor(Value *V) {
+ AliasSet::PointerRec *&Entry = PointerMap[V];
+ if (Entry == 0)
+ Entry = new AliasSet::PointerRec(V);
+ return *Entry;