mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-14 15:25:25 +00:00
Change CallGraphNode to maintain it's Function as an AssertingVH
for sanity. This didn't turn up any bugs. Change CallGraphNode to maintain its "callsite" information in the call edges list as a WeakVH instead of as an instruction*. This fixes a broad class of dangling pointer bugs, and makes CallGraph have a number of useful invariants again. This fixes the class of problem indicated by PR4029 and PR3601. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80663 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -212,7 +212,7 @@ static void UpdateCallGraphAfterInlining(CallSite CS,
|
||||
}
|
||||
|
||||
for (; I != E; ++I) {
|
||||
const Instruction *OrigCall = I->first.getInstruction();
|
||||
const Value *OrigCall = I->first;
|
||||
|
||||
DenseMap<const Value*, Value*>::iterator VMI = ValueMap.find(OrigCall);
|
||||
// Only copy the edge if the call was inlined!
|
||||
|
Reference in New Issue
Block a user