[llvm-commits] [llvm] r68120 - in /llvm/trunk: lib/Transforms/Utils/InlineFunction.cpp test/Other/2009-03-31-CallGraph.ll

Duncan Sands baldrick at free.fr
Sun Apr 19 09:28:59 PDT 2009


Hi Chris,

> >> +            // We should be able to do this:
> >> +            //   (*CG)[Caller]->replaceCallSite(CI, II);
> >> +            // but that fails if the old call site isn't in the  
> >> call graph,
> >> +            // which, because of LLVM bug 3601, it sometimes isn't.
> >
> > wouldn't it be better to fix PR3601?
> 
> Incidentally, converting CallGraph to use AssertingVH would be a great  
> way to flush out these sorts of bugs.

I did this but it suffers from the problem that callgraph info is not
deleted before running a pass that doesn't preserve the callgraph.
Such a pass may of course delete call instructions without updating the
callgraph, and this causes the assertion to fire.  I'm still investigating,
so this may not be the whole story.

Ciao,

Duncan.



More information about the llvm-commits mailing list