commit | 6bb4958543e2b7ff412b3dac3ebf01a184193ad7 | [log] [tgz] |
---|---|---|
author | Torok Edwin <edwintorok@gmail.com> | Sat May 23 17:29:48 2009 +0000 |
committer | Torok Edwin <edwintorok@gmail.com> | Sat May 23 17:29:48 2009 +0000 |
tree | 8bffda5d5211572322ad8c2a363f01f52bac765b | |
parent | 1f04462c22a2b0fc0bb1fc7d33b39418308fb868 [diff] |
Fix PR4254. The DAGCombiner created a negative shiftamount, stored in an unsigned variable. Later the optimizer eliminated the shift entirely as being undefined. Example: (srl (shl X, 56) 48). ShiftAmt is 4294967288. Fix it by checking that the shiftamount is positive, and storing in a signed variable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72331 91177308-0d34-0410-b5e6-96231b3b80d8