跳到主要内容

JEP 340:一个 AArch64 端口,而不是两个

概括

删除所有与端口相关的源arm64,同时保留 32 位 ARM 端口和 64 位aarch64端口。

动机

删除此端口将使所有贡献者能够将精力集中在单个 64 位 ARM 实现上,并消除维护两个端口所需的重复工作。

描述

JDK 中存在两个 64 位 ARM 端口。这些的主要来源位于src/hotspot/cpu/armopen/src/hotspot/cpu/aarch64目录中。尽管这两个移植都产生了aarch64实现,但为了这个 JEP,我们将把前者(由 Oracle 贡献)称为 ,arm64将后者称为aarch64

以下是将作为本 JEP 的一部分完成的任务:

  • 删除所有与 64 位与 32 位构建相关的arm64特定源和s#ifdef``open/src/hotspot/cpu/arm
  • 扫描剩余的JDK源以查找#ifdef与此端口相关的s
  • 删除用于构建此端口的构建选项。使该aarch64端口成为 64 位 ARM 架构的默认构建。
  • 验证剩余的 32 位 ARM 端口是否继续构建并运行一致性测试,并且不会出现与此 JEP 相关的更改之前不存在的回归。