[aarch64-port-dev ] RFD: AOT for AArch64

Stuart Monteith stuart.monteith at linaro.org
Mon Mar 26 14:38:53 UTC 2018


Hi Ed,
  Just to be explicit, did you originally see something like:

# after -XX: or in .hotspotrc:  SuppressErrorAt=/macroAssembler_aarch64.cpp:804
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error
(/home/stuart/repos/hs/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp:804),
pid=40733, tid=40752
#  assert(is_NativeCallTrampolineStub_at(stub_start_addr)) failed:
doesn't look like a trampoline
#
# JRE version: OpenJDK Runtime Environment (11.0) (fastdebug build
11-internal+0-adhoc.stuart.hs)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug
11-internal+0-adhoc.stuart.hs, mixed mode, aot, tiered, jvmci,
compressed oops, g1 gc, linux-aarch64)
# No core dump will be written. Core dumps have been disabled. To
enable core dumping, try "ulimit -c unlimited" before starting Java
again
#

This is with a tip from today:

  changeset:   49465:d7c83c8e4e65
  tag:         tip
  user:        roland
  date:        Tue Mar 20 15:38:00 2018 +0100
  summary:     8197931: Null pointer dereference in
Unique_Node_List::push of node.hpp:1510



On 24 March 2018 at 18:54, Edward Nevill <edward.nevill at gmail.com> wrote:
> On Sat, 2018-03-24 at 16:09 +0000, Edward Nevill wrote:
>> On Fri, 2018-03-23 at 18:11 +0000, Andrew Haley wrote:
>> >
>> >
>> Looks promising, but I get as far as here and then get
>>
>> Exception in thread "main" jdk.vm.ci.common.JVMCIError: expected VM constant not found: CardTableModRefBS::dirty_card
>>
>
> It looks like your patch
>
> http://cr.openjdk.java.net/~aph/jaotc/jdk-hs-1/
>
> didn't apply cleanly to tip of http://hg.openjdk.java.net/jdk/hs
>
> I tried updating to
>
> changeset:   48711:e321560ac819
> user:        adinn
> date:        Thu Jan 25 14:47:27 2018 +0000
> files:       src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp
> description:
> 8195859: AArch64: vtableStubs gtest fails after 8174962
> Summary: gtest vtableStubs introduced by 8174962 fails on AArch64 with an invalid insn encoding
> Reviewed-by: duke
>
> Which looks like the rev you are basing your patch on based on the rejected patch.
>
> It seems to get further, but now I get
>
> ed at ubuntu:~/openjdk$ /home/ed/openjdk/hs/build/linux-aarch64-normal-server-release/images/jdk/bin/jaotc -J--module-path=/home/ed/openjdk/graal/sdk/mxbuild/modules/org.graalvm.graal_sdk.jar:/home/ed/openjdk/graal/truffle/mxbuild/modules/com.oracle.truffle.truffle_api.jar -J--upgrade-module-path=/home/ed/openjdk/graal/compiler/mxbuild/modules/jdk.internal.vm.compiler.jar Queens.class --output Queens.so
> Error: Failed compilation: Queens.main([Ljava/lang/String;)V: org.graalvm.compiler.graph.GraalGraphError: org.graalvm.compiler.debug.GraalError: Emitting code to load a metaspace address is not currently supported on aarch64
>         at node: 287|LoadConstantIndirectly
> Error: Failed compilation: Queens.print([I)V: org.graalvm.compiler.graph.GraalGraphError: org.graalvm.compiler.debug.GraalError: Emitting code to load a metaspace address is not currently supported on aarch64
>         at node: 1273|LoadConstantIndirectly
> Exception in thread "main" java.lang.NoSuchMethodError: jdk.tools.jaotc.aarch64.AArch64ELFMacroAssembler.addressOf(Ljdk/vm/ci/code/Register;)V
>         at jdk.aot/jdk.tools.jaotc.aarch64.AArch64ELFMacroAssembler.getPLTStaticEntryCode(AArch64ELFMacroAssembler.java:68)
>         at jdk.aot/jdk.tools.jaotc.CodeSectionProcessor.addCallStub(CodeSectionProcessor.java:139)
>         at jdk.aot/jdk.tools.jaotc.CodeSectionProcessor.process(CodeSectionProcessor.java:117)
>         at jdk.aot/jdk.tools.jaotc.DataBuilder.prepareData(DataBuilder.java:142)
>         at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:188)
>         at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:101)
>         at jdk.aot/jdk.tools.jaotc.Main.main(Main.java:80)
>
> Is this known/expected? What revision of jdk/hs are you building with? I'd like to see this working.
>
> Thanks,
> Ed.
>


More information about the hotspot-dev mailing list