Fix the big regression that has been killing the nightly tester these last

few days.  Apparently the old symbol table used to auto rename collisions in
the type symbol table and the new one does not.  It doesn't really make sense
for the new one to do so, so we just make the client do it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13877 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2004-05-28 05:47:27 +00:00
parent c3fcaea8ac
commit 9d1af97d02
2 changed files with 6 additions and 2 deletions

View File

@ -236,10 +236,12 @@ bool CBackendNameAllUsedStructs::run(Module &M) {
// structure types.
//
bool Changed = false;
unsigned RenameCounter = 0;
for (std::set<const Type *>::const_iterator I = UT.begin(), E = UT.end();
I != E; ++I)
if (const StructType *ST = dyn_cast<StructType>(*I)) {
const_cast<StructType*>(ST)->setName("unnamed", &MST);
while (M.addTypeName("unnamed"+utostr(RenameCounter), ST))
++RenameCounter;
Changed = true;
}
return Changed;

View File

@ -236,10 +236,12 @@ bool CBackendNameAllUsedStructs::run(Module &M) {
// structure types.
//
bool Changed = false;
unsigned RenameCounter = 0;
for (std::set<const Type *>::const_iterator I = UT.begin(), E = UT.end();
I != E; ++I)
if (const StructType *ST = dyn_cast<StructType>(*I)) {
const_cast<StructType*>(ST)->setName("unnamed", &MST);
while (M.addTypeName("unnamed"+utostr(RenameCounter), ST))
++RenameCounter;
Changed = true;
}
return Changed;