[LLVMdev] Branch simplification

Chris Lattner sabre at nondot.org
Wed Mar 30 09:48:47 PST 2005


On Wed, 30 Mar 2005, Eric Zimmerman wrote:
> I have a CFG built by LLVM with blocks that look like this:
>
> myBlock:           ; preds = %predA, %predB
>   %cond = phi bool [ false, %predA ], [ %otherCond, %predB ]
>   br bool %cond, %succA, %succB
>
> Is there a pass or sequence of passes that will see the constant
> 'false' in the PHI instruction and change the target of %predA to
> point directly to %succB?  I tried -simplifycfg but it didn't seem to
> help.

Currently there isn't.  -simplifycfg does some of this sort of thing, but 
isn't smart enough to see through PHI nodes yet.

-Chris

-- 
http://nondot.org/sabre/
http://llvm.cs.uiuc.edu/




More information about the llvm-dev mailing list