From: Daniel Dunbar Date: Wed, 19 Aug 2009 19:22:52 +0000 (+0000) Subject: Change ValueSymbolTable to use raw_svector_ostream for string concatenation. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=29c142077e49b91b36650ecd5664ba4a97b961b1;p=llvm Change ValueSymbolTable to use raw_svector_ostream for string concatenation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79449 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/ValueSymbolTable.cpp b/lib/VMCore/ValueSymbolTable.cpp index 525f3f04d01..8579ad98c1b 100644 --- a/lib/VMCore/ValueSymbolTable.cpp +++ b/lib/VMCore/ValueSymbolTable.cpp @@ -43,16 +43,17 @@ void ValueSymbolTable::reinsertValue(Value* V) { } // Otherwise, there is a naming conflict. Rename this value. - SmallString<128> UniqueName(V->getName().begin(), V->getName().end()); + SmallString<256> UniqueName(V->getName().begin(), V->getName().end()); // The name is too already used, just free it so we can allocate a new name. V->Name->Destroy(); unsigned BaseSize = UniqueName.size(); while (1) { - // Trim any suffix off. + // Trim any suffix off and append the next number. UniqueName.resize(BaseSize); - UniqueName.append_uint_32(++LastUnique); + raw_svector_ostream(UniqueName) << ++LastUnique; + // Try insert the vmap entry with this suffix. ValueName &NewName = vmap.GetOrCreateValue(StringRef(UniqueName.data(), @@ -90,9 +91,9 @@ ValueName *ValueSymbolTable::createValueName(const StringRef &Name, Value *V) { SmallString<128> UniqueName(Name.begin(), Name.end()); while (1) { - // Trim any suffix off. + // Trim any suffix off and append the next number. UniqueName.resize(Name.size()); - UniqueName.append_uint_32(++LastUnique); + raw_svector_ostream(UniqueName) << ++LastUnique; // Try insert the vmap entry with this suffix. ValueName &NewName =