Skip to content
  • Chris Lattner's avatar
    Fix a nasty bug that caused us to unroll EXTREMELY large loops due to overflow · c12c945c
    Chris Lattner authored
    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
    
    llvm-svn: 13564
    c12c945c
Loading