From: Chris Lattner Date: Tue, 13 Jul 2004 06:58:07 +0000 (+0000) Subject: Replace a bunch of complex ConstantPointerRef referring code with simple X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=38ab6bff5d458505cadf650d0b78742787a02b4d;p=oota-llvm.git Replace a bunch of complex ConstantPointerRef referring code with simple code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14785 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index b2f901f206e..a4d2cf4f9c8 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -118,17 +118,9 @@ static struct PerModuleInfo { if (I != GlobalRefs.end()) { GlobalValue *OldGV = I->second; // Get the placeholder... I->first.second.destroy(); // Free string memory if necessary - - // Loop over all of the uses of the GlobalValue. The only thing they are - // allowed to be is ConstantPointerRef's. - assert(OldGV->hasOneUse() && "Only one reference should exist!"); - User *U = OldGV->use_back(); // Must be a ConstantPointerRef... - ConstantPointerRef *CPR = cast(U); - - // Change the const pool reference to point to the real global variable - // now. This should drop a use from the OldGV. - CPR->replaceUsesOfWithOnConstant(OldGV, GV); - assert(OldGV->use_empty() && "All uses should be gone now!"); + + // Replace all uses of the placeholder with the new GV + OldGV->replaceAllUsesWith(GV); // Remove OldGV from the module... if (GlobalVariable *GVar = dyn_cast(OldGV))