[llvm-commits] [llvm] r154987 - /llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp

Chris Lattner clattner at apple.com
Wed Apr 18 14:18:21 PDT 2012


On Apr 18, 2012, at 1:13 AM, Duncan Sands wrote:

> Hi Bill,
> 
>> Use a heavy hammer to fix PR12573.
>> 
>> If the loop contains invoke instructions, whose unwind edge escapes the loop,
>> then don't try to unswitch the loop. Doing so may cause the unwind edge to be
>> split, which not only is non-trivial but doesn't preserve loop simplify
>> information.
> 
> testcase?  By the way, this disables loop unswitching for any loop that is
> wrapped in a try-catch block - is that right?  If so, isn't that kind of
> bad?  The hammer does seem extra heavy to me :)

This hammer does seem overly strong to me.  Also, can't this check be moved below the other, cheaper, checks?

-Chris



More information about the llvm-commits mailing list