RFD: AOT for AArch64

dean.long at oracle.com dean.long at oracle.com
Tue Mar 27 16:18:08 UTC 2018

We did have a regression in this area recently.  If you rebase to the 
latest Graal then this fix should help:



On 3/27/18 5:58 AM, Andrew Haley wrote:
> On 27/03/18 02:21, dean.long at oracle.com wrote:
>> On 3/23/18 4:27 PM, Vladimir Kozlov wrote:
>>> Code in AOTCompiledClass.java look strange in try block. Why you need it?
>> I've seen that code fail as well, but thought it was due to me doing
>> something wrong, because it always went away with the final version of
>> my changes.  It would be great to fix this issue once and for all.
>> Andrew, if you have a test case to reproduce the problem, it would be
>> great to have it as a regression test.
> It always happens for me when processing stubs:
> HotSpotResolvedJavaMethod m = HotSpotMethod<ExceptionHandlerStub.exceptionHandler(Object, Word, Register, OptionValues)>
> type = m.getDeclaringClass() = HotSpotType<Lorg/graalvm/compiler/hotspot/stubs/ExceptionHandlerStub;, resolved>
> type.getName() = Lorg/graalvm/compiler/hotspot/stubs/ExceptionHandlerStub;
> getAOTKlassData(name) = null
> I can't see where addAOTKlassData() is ever called for stubs code.
> If I run with assertions I get:
> Exception in thread "main" java.lang.AssertionError: no data for HotSpotType<Lorg/graalvm/compiler/hotspot/stubs/ExceptionHandlerStub;, resolved>
> 	at jdk.aot/jdk.tools.jaotc.AOTCompiledClass.metadataName(AOTCompiledClass.java:441)
> 	at jdk.aot/jdk.tools.jaotc.AOTCompiledClass.metadataName(AOTCompiledClass.java:450)
> 	at jdk.aot/jdk.tools.jaotc.AOTCompiledClass.metadataName(AOTCompiledClass.java:456)
> 	at jdk.aot/jdk.tools.jaotc.MetadataBuilder.addMetadataEntries(MetadataBuilder.java:185)
> 	at jdk.aot/jdk.tools.jaotc.MetadataBuilder.createMethodMetadata(MetadataBuilder.java:119)
> If anyone knows where stubs are supposed to be added to
> AOTCompiledClass.klassData I'll have a look, but as far as I can see
> the answer is "nowhere".

More information about the hotspot-dev mailing list