review (S) for 6663854: assert(n != __null,"Bad immediate dominator info.") in C2 with -Xcomp
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Wed Feb 17 15:03:47 PST 2010
Looks good.
The main test class is called Tester - not Test6663854:
public class Tester {
Vladimir
Tom Rodriguez wrote:
> Oops. http://cr.openjdk.java.net/~never/6663854
>
> tom
>
> On Feb 17, 2010, at 2:30 PM, Tom Rodriguez wrote:
>
>> 6663854: assert(n != __null,"Bad immediate dominator info.") in C2 with -Xcomp
>> Reviewed-by:
>>
>> This is another instance of the ConvI2L problem with type information
>> being raised to a point that it's no longer true, like the bug
>> 6659207, resulting in top being returned and some code path being
>> mistakenly killed. The same style of fix for 6659207 won't work in
>> this case because there's no option to bailout if the types won't
>> work. Instead we strip the constrained type off the ConvI2L as it is
>> pushed up. The test case was automatically generated and I couldn't
>> simplify it any further so it's pretty horrific looking. Tested with
>> test case and confirmed that stripping the type doesn't affect the
>> code quality for scimark which is very sensitive to the loss of the
>> type information on ConvI2Ls used in address expressions.
>>
>> src/share/vm/opto/split_if.cpp
>> test/compiler/6663854/Test6663854.java
>
More information about the hotspot-compiler-dev
mailing list