diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-04-05 20:30:20 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-04-05 20:30:20 +0000 |
commit | 740cd657f3d9d4e88614831c70a649f9257164da (patch) | |
tree | 55acdd0c3c13cc20ea4e1b1863f80b4cc62f21f8 /lib/CodeGen/AsmPrinter/DwarfDebug.cpp | |
parent | 036ebfd87434bc30a0e51f4b9a3d55ab49ee5509 (diff) |
Don't break the IV update in TLI::SimplifySetCC().
LSR always tries to make the ICmp in the loop latch use the incremented
induction variable. This allows the induction variable to be kept in a
single register.
When the induction variable limit is equal to the stride,
SimplifySetCC() would break LSR's hard work by transforming:
(icmp (add iv, stride), stride) --> (cmp iv, 0)
This forced us to use lea for the IC update, preventing the simpler
incl+cmp.
<rdar://problem/7643606>
<rdar://problem/11184260>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154119 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
0 files changed, 0 insertions, 0 deletions