[LLVMdev] a problem when using postDominatorTree

Tobias Grosser grosser at fim.uni-passau.de
Thu Aug 5 12:56:45 PDT 2010


On 08/05/2010 06:00 PM, John Criswell wrote:
> Wenbin Zhang wrote:
>> I'll try the trunk, as well as check my code again. If indeed it's not
>> fixed, I'll try to post a triggering case here.
>> Thanks for the advice~
>>
> 
> Did you run the -mergereturn pass (it might also be called
> UnifyExitNodes in the source code)? This is the pass that ensures that
> each function has exactly one basic block that returns control to the
> caller.
> 
> It's possible that PostDominator doesn't handle functions with multiple
> exits (if someone knows whether it does or not, please let me know).

It should. There are still limitations in terms of infinite loops that
are are not analyzed by the PostDominator analysis, but multiple exits
should be handled correctly. At least there is code try to support them.

Tobi



More information about the llvm-dev mailing list