Pointer Authentication Code for return address, using key B, not a branch target
This instruction calculates and inserts a Pointer Authentication Code for an instruction address, using two modifiers and key B.
The address is in X30.
The first modifier is in SP.
The second modifier is the value of PC.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| 1 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
| sf | S | opcode2 | opcode | Rn | Rd | ||||||||||||||||||||||||||
if !IsFeatureImplemented(FEAT_PAuth_LR) then EndOfDecode(Decode_UNDEF); end; let d : integer = 30;
2025-09_diff_tag 2025-11-28 16:29:05
Copyright © 2010-2025 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.