[LLVMdev] Inter-procedural program flow analysis

Stephen Schiffli sschiffli at gmail.com
Tue Oct 2 16:29:34 PDT 2012

Is there any inter-procedural analysis that could tell me if some
BasicBlock Y is guaranteed to execute based on my knowledge that BasicBlock
X will execute?  For example:

extern int x;

void foo() { }

int main() {

            if (x) {


            } else {




I want to be told that the entry block of foo is guaranteed to be executed
since I know the entry block of main is guaranteed to be executed.
 Basically that all paths from X to program termination go through Y at
some point.  Please ignore the folding of identical branches and
function in-lining, I want to use this type of analysis in the general case.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121002/f6e83713/attachment.html>

More information about the llvm-dev mailing list