diff options
author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-12-11 19:02:21 +0000 |
---|---|---|
committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-12-11 19:02:21 +0000 |
commit | ba1bf875869251328408e98567053528ff79cff7 (patch) | |
tree | 36b589cc096b95cd00f49d383d245a018acc5551 /llvm/lib/CodeGen/MachineCombiner.cpp | |
parent | 9683ecbff6c83ee2181e3bc463bfe1553c7388c6 (diff) | |
download | bcm5719-llvm-ba1bf875869251328408e98567053528ff79cff7.tar.gz bcm5719-llvm-ba1bf875869251328408e98567053528ff79cff7.zip |
[SCEVExpander] Explicitly expand AddRec starts into loop preheader
This is NFC today, but won't be once D27216 (or an equivalent patch) is
in.
This change fixes a design problem in SCEVExpander -- it relied on a
hoisting optimization to generate correct code for add recurrences.
This meant changing the hoisting optimization to not kick in under
certain circumstances (to avoid speculating faulting instructions, say)
would break correctness.
The fix is to make the correctness requirements explicit, and have it
not rely on the hoisting optimization for correctness.
llvm-svn: 289397
Diffstat (limited to 'llvm/lib/CodeGen/MachineCombiner.cpp')
0 files changed, 0 insertions, 0 deletions