RFR(M): 8207343: Automate vtable/itable stub size calculation

Zhongwei Yao Zhongwei.Yao at arm.com
Thu Aug 2 02:45:33 UTC 2018


Hi, Lutz,

I have tested it on aarch64 by running jtreg tests. And find two tiny issues in vtableStubs_aarch64.cpp's VtableStubs::create_itable_stub function:
1. typecheckSize on line 212 is not defined.
2. estimate on line 211 is not large enough, I get 148 in gc/g1/TestFromCardCacheIndex.java case. Here is the assertion failure from that case:
    assert(slop_delta >= 0) failed: itable #3: Code size estimate (140) for lookup_interface_method too small, required: 148

However, I don't have tested the modification in vtableStubs_arm.cpp due to I don't have an arm32 environment at hand.

--
Best regards,
Zhongwei

________________________________________
From: hotspot-compiler-dev <hotspot-compiler-dev-bounces at openjdk.java.net> on behalf of Schmidt, Lutz <lutz.schmidt at sap.com>
Sent: Monday, July 30, 2018 3:57:05 PM
To: hotspot-compiler-dev at openjdk.java.net
Subject: RFR(M): 8207343: Automate vtable/itable stub size calculation

Dear all,

may I please request reviews for this change:

Bug:    https://bugs.openjdk.java.net/browse/JDK-8207343
Webrev: http://cr.openjdk.java.net/~lucy/webrevs/8207343.00/

With this change, I try to get rid of the a-priory size guessing for vtable and itable stubs. Please refer to the bug description for all the details. I didn't want to duplicate that text.

ARM and AARCH64 help requested!
The edits in vtableStubs_aarch64.cpp and vtableStubs_arm.cpp are made blindfolded. I am neither an ARM expert nor do I have build or test hardware available. I would be very grateful if one of the ARM gurus could please fill in for me.

Thank you!
Lutz




More information about the hotspot-compiler-dev mailing list