Webrev of Oracle ARM & AARCH64 Sources
Bob Vandette
bob.vandette at oracle.com
Wed Sep 28 14:07:59 UTC 2016
I’m am please to announce that I have completed our internal reviews and can now
open up the sources to our ARM 32 & 64 bit implementations of JDK9.
Here is a webrev that includes a patch that can be applied on top of the
(http://hg.openjdk.java.net/aarch32-port/jdk9-arm3264/ <http://hg.openjdk.java.net/aarch32-port/jdk9-arm3264/>) forest.
http://cr.openjdk.java.net/~bobv/arm3264/webrev <http://cr.openjdk.java.net/~bobv/arm3264/webrev>
Notes:
1. Counter to my initial email announcing the open sourcing effort, the
pregenerated interpreter is not included in the provided patch. AOT is
our long term solution for increased performance on Mobile and it was decided
that we do not want to support the static interpreter beyond JDK 8.
2. In order to allow building the two different 64-bit ARM sources, I overloaded
a new configure option —abi-profile to allow for the selection of the Oracle
64-bit ARM port. We need a better solution before this support can be
integrated into the mainline. To use the Oracle sources for an aarch64 build,
select —abi-profile=arm64.
3. The scripts provided below allows for the creation of the minimal, client and
server VMs for the Oracle aarch64 build, however, the jvm.cfg file is not
automatically updated during the build. To run a non server VM, this file
will need to be updated.
4. In order to make it easier to keep the new open sources up to date with
their closed counterparts in jdk9, I have added a comment in
hotspot/src/cpu/arm/vm/vm_version_ext_arm.hpp which contains the mercurial
revision that I last merged with. This will make it easier to produce patches
to bring the new open files up to the latest version.
/* ARM sources Merged up to hotspot/src/closed changeset 2316:b247a2ea70e4 */
Build Scripts:
Here are a set of scripts that demonstrate how to build the three ARM
configurations. We typically cross compile our ARM builds so these
scripts will have to be adjusted in order to build natively on an ARM system.
http://cr.openjdk.java.net/~bobv/arm3264/scripts/ <http://cr.openjdk.java.net/~bobv/arm3264/scripts/>
aarch64.csh Builds the current open version of aarch64 binaries
arm64.csh Builds the Oracle aarch64 binaries
arm.csh Builds 32-bit ARM binaries
My next step is to push this changeset into the jdk9-arm3264 forest assuming I
achieve committer status for the aarch32 project this week.
Bob Vandette
More information about the aarch32-port-dev
mailing list