[lworld] RFR: 8314190: [lworld] Missing InlineTypeNode re-materialization during type sharpening. [v2]
Tobias Hartmann
thartmann at openjdk.org
Fri Aug 18 08:24:50 UTC 2023
On Thu, 17 Aug 2023 11:17:29 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
>> - Currently we try to sharpen the object type to a narrower type to optimize object type comparison against a class constant.
>> - This is achieved by inserting a CheckCastPP node which casts the object type to a higher speculative type, if cast type is an inlinetype we need to rematerialize InlineTypeNode from newly casted object which was missing and is fixed by the patch.
>>
>> Kindly review.
>>
>> Tier1 regressions are clean.
>>
>> Best Regards,
>> Jatin Bhateja
>
> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
>
> Adding an IR test and review comment resolution.
test/hotspot/jtreg/compiler/valhalla/inlinetypes/TestValueRematDuringTypeSharpening.java line 81:
> 79: for (int i = 0; i < 10000; i++) {
> 80: res += test((i % 1000) == 1 ? new dummyValue1(i) : new dummyValue2(i));
> 81: }
I think you should leave warmup to the IR framework. If more iterations are needed, you can control that via the `@Warmup` annotation. And here, just do:
test(new dummyValue1(0));
test(new dummyValue2(2));
-------------
PR Review Comment: https://git.openjdk.org/valhalla/pull/907#discussion_r1298160981
More information about the valhalla-dev
mailing list