[LLVMdev] global control flow graph at machine code level

AbhishekR abhishekr1982 at gmail.com
Sun Jul 29 09:32:11 PDT 2012


Hi all,
I am trying to build a global control flow graph at machine code level.
Essentially, I need the handles to the MachineFunction's corresponding to
every call site inside a MachineFunction in order to get the handles to
MachineBasicBlock's with return statements inside the callee. Currently,
the codegen module processes one MachineFunction at a time and hence I
can't find a way to gather information about other MachineFunction's and
their MachineBasicBlock's.

It seems like I may have to modify the way MachineFunction is instantiated
in MachineFunctionAnalysis. Instead of doing it per Function, it may have
to be done for the entire Module by instantiating MachineFunction objects
for every Function inside the Module. This might require major changes to
the PassManager framework as well. Is there some work in this direction and
code that someone can share? Or an alternative solution?

-- 
Regards,
Abhishek Rhisheekesan
CIDSE, Arizona State University
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120729/995cb5e7/attachment.html>


More information about the llvm-dev mailing list