diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2014-01-24 02:24:47 +0000 |
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2014-01-24 02:24:47 +0000 |
| commit | cc497b6ab51e22a10b497b85c941efc30eeb2f7a (patch) | |
| tree | c03fb8bf3250a34424dca9a4dd215df45e303521 /llvm/lib/Support/Compression.cpp | |
| parent | 247f951e3a5b89d5a8f126470095be781abcd8ca (diff) | |
| download | bcm5719-llvm-cc497b6ab51e22a10b497b85c941efc30eeb2f7a.tar.gz bcm5719-llvm-cc497b6ab51e22a10b497b85c941efc30eeb2f7a.zip | |
[LPM] Fix a logic error in LICM spotted by inspection.
We completely skipped promotion in LICM if the loop has a preheader or
dedicated exits, but not *both*. We hoist if there is a preheader, and
sink if there are dedicated exits, but either hoisting or sinking can
move loop invariant code out of the loop!
I have no idea if this has a practical consequence. If anyone has ideas
for a test case, let me know.
llvm-svn: 199966
Diffstat (limited to 'llvm/lib/Support/Compression.cpp')
0 files changed, 0 insertions, 0 deletions

