diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.y | 14 | 
1 files changed, 6 insertions, 8 deletions
diff --git a/llvm/lib/AsmParser/llvmAsmParser.y b/llvm/lib/AsmParser/llvmAsmParser.y index 52ef6907f29..71da575080a 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.y +++ b/llvm/lib/AsmParser/llvmAsmParser.y @@ -117,15 +117,13 @@ static struct PerModuleInfo {        // Loop over all of the uses of the GlobalValue.  The only thing they are        // allowed to be is ConstantPointerRef's.        assert(OldGV->use_size() == 1 && "Only one reference should exist!"); -      while (!OldGV->use_empty()) { -        User *U = OldGV->use_back();  // Must be a ConstantPointerRef... -        ConstantPointerRef *CPR = cast<ConstantPointerRef>(U); -        assert(CPR->getValue() == OldGV && "Something isn't happy"); +      User *U = OldGV->use_back();  // Must be a ConstantPointerRef... +      ConstantPointerRef *CPR = cast<ConstantPointerRef>(U); -        // Change the const pool reference to point to the real global variable -        // now.  This should drop a use from the OldGV. -        CPR->mutateReferences(OldGV, GV); -      } +      // Change the const pool reference to point to the real global variable +      // now.  This should drop a use from the OldGV. +      CPR->mutateReferences(OldGV, GV); +      assert(OldGV->use_empty() && "All uses should be gone now!");        // Remove OldGV from the module...        CurrentModule->getGlobalList().remove(OldGV);  | 

