[llvm-dev] Entry and Shared Machine Basic Blocks of a Machine Function

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
Report Content as Inappropriate

[llvm-dev] Entry and Shared Machine Basic Blocks of a Machine Function

George Karpenkov via llvm-dev

Hi, LLVM developers!

I have heard that at the native assembly level, a function may have more than one entry points, and different function may share common basic blocks. What is the case for LLVM MachineFunction's? In particular, I would like to ask the following questions:

1) If the code of a MachineFunction may be entered at more than one point, does this mean that the MachineFunction itself has more than one entry (This sounds rather bizarre to me.), or that its code contains the entry of another MachineFunction?

2) Given a MachineFunction, is it possible to identify its entry MachineBasicBlock('s)? Is the entry MachineBasicBlock always the first MachineBasicBlock of the MachineFunction?

3) If LLVM allows more than one MachineFunction to share common MachineBasicBlock's, is it possible for MachineFunction's from different modules to share common MachineBasicBlock's?

Thank you!

Ming Zhang

LLVM Developers mailing list
[hidden email]