[LLVMdev] ModulePass using BreakCriticalEdges [Followup]
e0325716 at student.tuwien.ac.at
Wed May 13 07:39:20 PDT 2009
Andreas Neustifter wrote:
> I'm writing a ModulePass that needs critical edges split up. I have the
> in my getAnalysisUsage() but the pass never gets executed.
> I guess I have to request pass execution for each function, but I can't
> get behind how to do that, since there is no analysis group for that
> kind of transformation.
I now also added a (selfwritten) FunctionPass with is member of the
analysis group ProfileInfo
and fetching the ProfileInfo by executing
ProfileInfo *PI = &getAnalysis<ProfileInfo>(*F);
and now the BreakCriticalEdge pass gets also executed.
Seems to me that the FunctionPassManager generated when requesting the
ProfileInfo also executes the BreakCriticalEdges pass.
More information about the llvm-dev