JEP 237: Linux/AArch64 PortJEP 237: Linux/AArch64 PortOwnerAndrew HaleyTypeFeatureScopeImplementationStatusClosed / DeliveredRelease9Componenthotspot / compilerDiscussionaarch64 dash port dash dev at openjdk dot java dot netEffortLDurationSReviewed byMikael Vidstedt, Vladimir KozlovEndorsed byMikael VidstedtCreated2014/06/02 17:15Updated2017/03/08 23:38Issue8044552Summary
Port JDK 9 to Linux/AArch64.
Motivation
AArch64 is the new processor architecture from ARM Holdings plc.  It
is a departure from the 32-bit ARM processor architecture, and is
effectively a complete redesign.  It needs a new OpenJDK port.
Description
We (the AArch64 Porting Project) have ported the JDK to a new
platform: Linux/AArch64.  We have implemented the template
interpreter, the C1 (client) and the C2 (server) JIT compilers.
The focus of this JEP is not the porting effort itself, which has been
mostly completed, but rather the integration of the ports into the
OpenJDK master repositories.
Currently we have a large number of trivial changesets in the shared
part of the HotSpot repository.  These are mostly #ifdef's that
include the relevant platform-specific files.  There are a few changes
of other kinds, but again these are guarded by #ifdef AARCH64.  Thus,
the risk to other platforms is low.
There are also changes to the build machinery of HotSpot and rest of
the JDK to add appropriate definitions for endianness, word size, and
so on.  Again, these should not affect other platforms.
Most of the changes to be integrated won’t affect the current OpenJDK
platforms in any way because they are only active on the new
platform.
There are also changes in the build system but they shouldn’t cause
much trouble.
Here is a patch of the changes needed to the shared code in HotSpot.
All changesets are collected in a staging repository:
http://hg.openjdk.java.net/aarch64-port/stage/
Testing
Red Hat and Linaro regularly build and test the ports on the porting
platforms as well as on the currently-supported JDK 8 platforms to
ensure that no regressions are being introduced which break the
existing platforms.
Red Hat is committed to support fully (i.e., regularly update,
enhance, and test) the code for the new platforms introduced by this
effort.
Risks and Assumptions
There are potentially some issues with the availablility of AArch64
hardware to do this work, but we hope that it will become widely
available in the course of this project.
Similarly to the PPC/AIX port, a staging forest owned by the AArch64 Port
Project will be created (e.g., aarch64-port/stage) to contain changesets
that have been Reviewed and approved.
InstallingContributingSponsoringDevelopers' GuideVulnerabilitiesJDK GA/EA BuildsMailing listsWiki
                      · IRCBylaws · CensusLegalWorkshopJEP ProcessSource codeMercurialGitHubToolsGitjtreg harnessGroups(overview)AdoptionBuildClient LibrariesCompatibility & Specification ReviewCompilerConformanceCore LibrariesGoverning BoardHotSpotIDE Tooling & SupportInternationalizationJMXMembersNetworkingPortersQualitySecurityServiceabilityVulnerabilityWebProjects(overview,
      archive)AmberBabylonCRaCCaciocavalloClosuresCode ToolsCoinCommon VM InterfaceCompiler GrammarDetroitDevelopers' GuideDevice I/ODukeGalahadGraalIcedTeaJDK 7JDK 8JDK 8 UpdatesJDK 9JDK
      (…,
       21,
       22,
       23)JDK UpdatesJavaDoc.NextJigsawKonaKullaLambdaLanaiLeydenLilliputLocale EnhancementLoomMemory Model UpdateMetropolisMission ControlMulti-Language VMNashornNew I/OOpenJFXPanamaPenrosePort: AArch32Port: AArch64Port: BSDPort: HaikuPort: Mac OS XPort: MIPSPort: MobilePort: PowerPC/AIXPort: RISC-VPort: s390xPortolaSCTPShenandoahSkaraSumatraTiered AttributionTsanType AnnotationsValhallaVeronaVisualVMWakefieldZeroZGC

        © 2024 Oracle Corporation and/or its affiliates
        Terms of Use
        ·
        
            License: GPLv2
        · Privacy
        · Trademarks
