RFD: AOT for AArch64 (original) (raw)
Dmitry Chuyko dmitry.chuyko at bell-sw.com
Thu Mar 29 15:08:54 UTC 2018
- Previous message: RFD: AOT for AArch64
- Next message: RFD: AOT for AArch64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Andrew,
java.base can be compiled and used successfully in basic scenarios, I'll try something more complicated.
But here is some statistics about aot-compiled methods in modules I got:
Non-tiered
java.base: 13537 methods compiled, 37750 methods failed
Tiered (less successful)
java.base: 12 methods compiled, 51275 methods failed jdk.compiler: 0 methods compiled, 12495 methods failed jdk.internal.vm.ci: 0 methods compiled, 1792 methods failed jdk.scripting.nashorn: 4 methods compiled, 11877 methods failed
Vast majority of failed compilations is
org.graalvm.compiler.graph.GraalGraphError: org.graalvm.compiler.debug.GraalError: Emitting code to load a metaspace address is not currently supported on aarch64
also there are many
org.graalvm.compiler.graph.GraalGraphError: org.graalvm.compiler.debug.GraalError: Emitting code to load an object address is not currently supported on aarch64
-Dmitry
On 03/23/2018 09:11 PM, Andrew Haley wrote:
How to build it:
Check out jdk-hs. Apply http://cr.openjdk.java.net/~aph/jaotc/jdk-hs-1/ to that checkout then build OpenJDK images. Then $ git checkout https://github.com/theRealAph/graal.git $ cd graal $ git branch aarch64-branch-overflows MAKE SURE that JAVAHOME is pointing at the jdk-hs you just built: $ export JAVAHOME=/local/jdk-hs/build/linux-aarch64-normal-server-release/images/jdk/ Follow the "Building Graal" instructions at https://github.com/theRealAph/graal/tree/aarch64-branch-overflows/compiler My graal is in /local/graal/ and my jdk-hs is in /local/jdk-hs/. To run jaotc, I do something like this: _/local/jdk-hs/build/linux-aarch64-normal-server-release/images/jdk/bin/jaotc _ _-J--module-path=/local/graal/graal/sdk/mxbuild/modules/org.graalvm.graalsdk.jar:/local/graal/graal/truffle/mxbuild/modules/com.oracle.truffle.truffleapi.jar _ _-J--upgrade-module-path=/local/graal/graal/compiler/mxbuild/modules/jdk.internal.vm.compiler.jar _ myjar.jar --output myjar.so Note that the "-J" commands point jaotc at the version of Graal you've just built rather than OpenJDK's built-in version of Graal. Enjoy.
- Previous message: RFD: AOT for AArch64
- Next message: RFD: AOT for AArch64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]