[lworld] RFR: 8258038: [AARCH64] [lworld] Fix inline type implementation
Nick Gasson
ngasson at openjdk.java.net
Tue Mar 23 04:13:59 UTC 2021
On Wed, 17 Mar 2021 10:14:52 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:
>> This patch updates the original AArch64 lworld port from December 2019 to match the x86 C1/C2/interpreter changes since then. It doesn't support InlineTypePassFieldsAsArgs or InlineTypeReturnedAsFields: this can be added later.
>>
>> Known issues:
>>
>> * compiler/valhalla/inlinetypes/TestLWorld test9 fails with an internal C2 error:
>>
>> # Internal Error (/home/nicgas01/valhalla/src/hotspot/share/opto/buildOopMap.cpp:360), pid=2011, tid=2025
>> # assert(false) failed: there should be a oop in OopMap instead of a live raw oop at safepoint
>>
>> I haven't investigated this but it doesn't seem to be related to any of the platform specific code. I'll make a separate JBS issue for it.
>>
>> * compiler/valhalla/inlinetypes/TestArrays.java and TestNullableArrays.java fail some sub-tests with:
>>
>> stderr: [OpenJDK 64-Bit Server VM warning: InlineTypePassFieldsAsArgs is not supported on this platform
>> OpenJDK 64-Bit Server VM warning: InlineTypeReturnedAsFields is not supported on this platform
>> Exception in thread "main" java.lang.RuntimeException: Graph for 'TestNullableArrays::test1' contains different number of match nodes (expected 1 but got 0):
>> : expected 1 to equal 0
>> at jdk.test.lib.Asserts.fail(Asserts.java:594)
>> at jdk.test.lib.Asserts.assertEquals(Asserts.java:205)
>> at jdk.test.lib.Asserts.assertEQ(Asserts.java:178)
>> at compiler.valhalla.inlinetypes.InlineTypeTest.parseOutput(InlineTypeTest.java:600)
>> at compiler.valhalla.inlinetypes.InlineTypeTest.execute_vm(InlineTypeTest.java:482)
>> at compiler.valhalla.inlinetypes.InlineTypeTest.run(InlineTypeTest.java:436)
>> at compiler.valhalla.inlinetypes.TestNullableArrays.main(TestNullableArrays.java:58)
>> ]
>>
>> I think this is related to not implementing passing/returning fields.
>>
>> * compiler/valhalla/inlinetypes/TestBufferTearing.java fails intermittently. I haven't investigated this and will make a separate JBS issue for it.
>>
>> This patch includes two changes that I also submitted to openjdk/jdk:
>> * https://github.com/openjdk/jdk/commit/f7e0a09802f74
>> * https://github.com/openjdk/jdk/commit/be67aaabe63a
>
> Great work! This looks good to me.
Thanks for the review @TobiHartmann. Would you mind sponsoring this as I'm not a valhalla committer?
-------------
PR: https://git.openjdk.java.net/valhalla/pull/353
More information about the valhalla-dev
mailing list