JEP 340: One AArch64 Port, Not Two | 一个 AArch64 端口,而不是两个
摘要
移除所有与 arm64
端口相关的源代码,同时保留 32 位 ARM 端口和 64 位 aarch64
端口。
动机
移除这个端口将使所有贡献者能够将精力集中在单一的 64 位 ARM 实现上,并消除维护两个端口所需的重复工作。
描述
在 JDK 中存在两个 64 位 ARM 端口。这些端口的主要源代码位于 src/hotspot/cpu/arm
和 open/src/hotspot/cpu/aarch64
目录中。虽然这两个端口都产生 aarch64
实现,但为了这个 JEP 的目的,我们将把由 Oracle 贡献的前者称为 arm64
,后者称为 aarch64
。
以下是作为这个 JEP 一部分将要完成的任务:
- 移除
open/src/hotspot/cpu/arm
中所有与arm64
相关的特定源代码和与 64 位与 32 位构建相关的#ifdef
指令。 - 扫描剩余的 JDK 源代码以查找与这个端口相关的
#ifdef
指令。 - 移除构建这个端口的构建选项。使
aarch64
端口成为 64 位 ARM 架构的默认构建。 - 验证剩余的 32 位 ARM 端口在构建和运行符合性测试时,没有出现与此 JEP 相关的更改之前的回归问题。