On Thu, 11 Nov 2021 11:19:03 GMT, Andrew Dinn <ad...@openjdk.org> wrote:
>> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 5185: >> >>> 5183: // ROP Protection >>> 5184: >>> 5185: void MacroAssembler::protect_return_address() { >> >> We need proper, full, detailed comments about what these functions do, with >> reference to primary AArch64 documentation. > > As far as the AArch64 docs are concerned the relevant details are provided in > ARM-ARM D > > - The PAC functionality is described in ARM-ARM Section D5.1.5 > - Overview of the PAC instructions is provided in section C3.1.9 > - Detailed PAC instruction descriptions are provided in C6.2.195 - C6.2.199 > > n.b. I am specifically referring to my (possibly out of date) copy ARM-DDI > 0487D.a (ID103018) which is the Initial v8.4 EAC release from 2018. > > That said, I agree that a description of how these functions use the > underlying PAC support and what, effectively, they achieve via that usage > would be necessary. A reference to the relevant sections of the ARM doc in > the code would be helpful. Correction: Using the most up to date ARM ARM G [ARM DDI 0487G.a (ID011921)] - The PAC functionality is described in ARM-ARM Section D5.1.5 - Overview of the PAC instructions is provided in section C3.1.10 - Detailed PAC instruction descriptions are provided in C6.2.208 - C6.2.212 ------------- PR: https://git.openjdk.java.net/jdk/pull/6334