Request for reviews (S): 6910484: incorrect integer optimization (loosing and op-r in a given example)
Vladimir.Kozlov at Sun.COM
Thu Jan 7 19:10:32 PST 2010
On 1/7/10 7:00 PM, Tom Rodriguez wrote:
> Why does the new test only guard the dividend->in(i) line and not the needs_rounding line? Shouldn't it guard both?
Previous outer check has it: (-andconi) >= d
Rounding is not needed if mask cleans up more or equal number of bits then shift.
> On Jan 7, 2010, at 5:48 PM, Vladimir Kozlov wrote:
>> Fixed 6910484: incorrect integer optimization (loosing and op-r in a given example)
>> After 6667595 changes Div node ideal optimization incorrectly
>> removes AND operation if mask is larger then shift:
>> (x& -32)/2 incorrectly transformed to x/2
>> Remove AND operation only if mask is equal to shift.
>> Add regression test.
>> Reviewed by:
>> Fix verified (y/n): y, test
>> Other testing:
More information about the hotspot-compiler-dev