[PowerPC] Handle loop predecessor invokes
authorHal Finkel <hfinkel@anl.gov>
Sat, 7 Feb 2015 07:32:58 +0000 (07:32 +0000)
committerHal Finkel <hfinkel@anl.gov>
Sat, 7 Feb 2015 07:32:58 +0000 (07:32 +0000)
commit05bd43dc6e1038bde5320bbdbe89ca3c8acb3801
tree517e7cf4d3dee42cc56ce5bcf4401ea25551daa4
parent8143b4da3f8df2506d768f2833a2888545489853
[PowerPC] Handle loop predecessor invokes

If a loop predecessor has an invoke as its terminator, and the return value
from that invoke is used to determine the loop iteration space, then we can't
insert a computation based on that value in the loop predecessor prior to the
terminator (oops). If there's such an invoke, or just no predecessor for that
matter, insert a new loop preheader.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228488 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCLoopPreIncPrep.cpp
test/CodeGen/PowerPC/preincprep-invoke.ll [new file with mode: 0644]