On Wed, 28 Oct 2026 11:10:32 GMT, Andrew Haley <[email protected]> wrote:

>> Ashay Rane has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   Documentation updates
>>   
>>   - Include section numbers from ARM ISA document
>>   - Mark branch protection on Windows/ARM64 as supported
>
> src/hotspot/os_cpu/windows_aarch64/vm_version_windows_aarch64.cpp line 108:
> 
>> 106:   // - ISAR1's API field (bits 8 through 11): custom algorithm support
>> 107:   // - ISAR2's APA3 field (bits 12 through 15): QARM3 algorithm support
>> 108:   // See feature descriptions of the ARM v8 architecture for details.
> 
> Please reference chapter and verse.

Thanks!  I updated the comment to now say:


// The Arm Architecture Reference Manual for A-profile architecture (DDI0487)
// specifies the bits that reflect whether pointer authentication is enabled.
// See Part D (System Level Architecture), Section D8.10.3 (PAC instructions):
// - ID_AA64ISAR1_EL1.APA is nonzero => FEAT_PACQARMA5 is implemented
// - ID_AA64ISAR1_EL1.API is nonzero => FEAT_PACIMP is implemented
// - ID_AA64ISAR2_EL1.APA3 is nonzero => FEAT_PACQARMA3 is implemented


The weblink for this section is 
[here](https://support.arm.com/documentation/ddi0487/md/-Part-D-The-AArch64-System-Level-Architecture/-Chapter-D8-The-AArch64-Virtual-Memory-System-Architecture/-D8-10-Pointer-authentication/-D8-10-3-PAC-instructions),
 which says:

> For pointer authentication instructions other than the 
> [PACGA](https://support.arm.com/documentation/ddi0487/md/-Part-C-The-AArch64-Instruction-Set/-Chapter-C6-A64-Base-Instruction-Descriptions/-C6-2-Alphabetical-list-of-A64-base-instructions/-C6-2-305-PACGA?lang=en#isa_pacga)
>  instruction, the PAC is generated using one of the following IMPLEMENTATION 
> DEFINED methods:
> 
> - If 
> [FEAT_PACQARMA5](https://support.arm.com/documentation/ddi0487/md/-Part-A-Arm-Architecture-Introduction-and-Overview/-Chapter-A2-A-profile-Architecture-Extensions/-A2-2-Armv8-A-architecture-extensions/-A2-2-4-The-Armv8-3-architecture-extension?lang=en#feat_feat_pacqarma5)
>  is implemented, then 
> [ID_AA64ISAR1_EL1](https://support.arm.com/documentation/ddi0487/md/-Part-D-The-AArch64-System-Level-Architecture/-Chapter-D24-AArch64-System-Register-Descriptions/-D24-2-General-system-control-registers/-D24-2-84-ID-AA64ISAR1-EL1--AArch64-Instruction-Set-Attribute-Register-1?lang=en#reg_aarch64_id_aa64isar1_el1).APA
>  is nonzero and the QARMA5 block cipher algorithm is used.
> - If 
> [FEAT_PACIMP](https://support.arm.com/documentation/ddi0487/md/-Part-A-Arm-Architecture-Introduction-and-Overview/-Chapter-A2-A-profile-Architecture-Extensions/-A2-2-Armv8-A-architecture-extensions/-A2-2-4-The-Armv8-3-architecture-extension?lang=en#feat_feat_pacimp)
>  is implemented, then 
> [ID_AA64ISAR1_EL1](https://support.arm.com/documentation/ddi0487/md/-Part-D-The-AArch64-System-Level-Architecture/-Chapter-D24-AArch64-System-Register-Descriptions/-D24-2-General-system-control-registers/-D24-2-84-ID-AA64ISAR1-EL1--AArch64-Instruction-Set-Attribute-Register-1?lang=en#reg_aarch64_id_aa64isar1_el1).API
>  is nonzero and an IMPLEMENTATION DEFINED algorithm is used.
> - If 
> [FEAT_PACQARMA3](https://support.arm.com/documentation/ddi0487/md/-Part-A-Arm-Architecture-Introduction-and-Overview/-Chapter-A2-A-profile-Architecture-Extensions/-A2-2-Armv8-A-architecture-extensions/-A2-2-4-The-Armv8-3-architecture-extension?lang=en#feat_feat_pacqarma3)
>  is implemented, then 
> [ID_AA64ISAR2_EL1](https://support.arm.com/documentation/ddi0487/md/-Part-D-The-AArch64-System-Level-Architecture/-Chapter-D24-AArch64-System-Register-Descriptions/-D24-2-General-system-control-registers/-D24-2-85-ID-AA64ISAR2-EL1--AArch64-Instruction-Set-Attribute-Register-2?lang=en#reg_aarch64_id_aa64isar2_el1).APA3
>  is nonzero and the QARMA3 block cipher algorithm is used.

I also tacked on another change to building.[md,html] that says that both 
Linux/AArch64 and Windows/ARM64 support branch protection.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/33595#discussion_r4405230180

Reply via email to