[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