diff options
author | Chris Lattner <sabre@nondot.org> | 2004-05-13 20:43:31 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-05-13 20:43:31 +0000 |
commit | 82fec4e31da93f17cf95b1bf3f8a0e6d933b4f73 (patch) | |
tree | 6f055103408021aa588cc574afedd9ae99d02d1c /lib/Target/X86/InstSelectSimple.cpp | |
parent | 488b72bd7fa1f7258f077e0805d767e109376233 (diff) |
Fix a nasty bug that caused us to unroll EXTREMELY large loops due to overflow
in the size calculation.
This is not something you want to see:
Loop Unroll: F[main] Loop %no_exit Loop Size = 2 Trip Count = 2147483648 - UNROLLING!
The problem was that 2*2147483648 == 0.
Now we get:
Loop Unroll: F[main] Loop %no_exit Loop Size = 2 Trip Count = 2147483648 - TOO LARGE: 4294967296>100
Thanks to some anonymous person playing with the demo page that repeatedly
caused zion to go into swapping land. That's one way to ensure you'll get
a quick bugfix. :)
Testcase here: Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13564 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/InstSelectSimple.cpp')
0 files changed, 0 insertions, 0 deletions