Switch ValueSymbolTable to use StringMap<Value*> instead of std::map<std::string, Value*>

as its main datastructure.  There are many improvements yet to be made, but
this speeds up opt --std-compile-opts on 447.dealII by 7.3%.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34193 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2007-02-12 05:18:08 +00:00
parent fa48e9612e
commit dec628eead
16 changed files with 174 additions and 128 deletions

View File

@ -77,7 +77,7 @@ static void RemoveDeadConstant(Constant *C) {
//
static void StripSymtab(ValueSymbolTable &ST) {
for (ValueSymbolTable::iterator VI = ST.begin(), VE = ST.end(); VI != VE; ) {
Value *V = VI->second;
Value *V = VI->getValue();
++VI;
if (!isa<GlobalValue>(V) || cast<GlobalValue>(V)->hasInternalLinkage()) {
// Set name to "", removing from symbol table!