This is a collection of Intel®’ IA32® Software Developer's Manuals (URL of the day) and AMD' AMD64 Architecture Programmer's Manual together with the related specifications, application notes, white papers, and change logs. The collection aims to keep all available revisions. It was originally created by Michal Necasek, see OS/2 Museum.

If you have a public document, related to the IA32® specifications and missing from the collection, please mail it to me. The content of this URL and all sub-ULRs is available for convenient bulk download by rsync x86docs password "" (empty).

AUTIB, AUTIB1716, AUTIBSP, AUTIBZ, AUTIZB -- A64

AUTIB, AUTIB1716, AUTIBSP, AUTIBZ, AUTIZB

Authenticate instruction address, using key B

This instruction authenticates an instruction address, using a modifier and key B.

If the authentication passes, the upper bits of the address are restored to enable subsequent use of the address. For information on behavior if the authentication fails, see Faulting on pointer authentication.

The address is:

The modifier is:

If FEAT_PAuth_LR is implemented and PSTATE.PACM is 1, then AUTIB1716 and AUTIBSP include a second modifier that is:

It has encodings from 2 classes: Integer and System

Integer
(FEAT_PAuth)

313029282726252423222120191817161514131211109876543210
110110101100000100Z101RnRd
sfSopcode2

Encoding for the AUTIB variant

Applies when (Z == 0)

AUTIB <Xd>, <Xn|SP>

Encoding for the AUTIZB variant

Applies when (Z == 1 && Rn == 11111)

AUTIZB <Xd>

Decode for all variants of this encoding

if !IsFeatureImplemented(FEAT_PAuth) then EndOfDecode(Decode_UNDEF); end; if Z == '1' && Rn != '11111' then EndOfDecode(Decode_UNDEF); end; let autib1716 : boolean = FALSE; let d : integer = UInt(Rd); let n : integer = UInt(Rn); let auth_combined : boolean = FALSE; let source_is_sp : boolean = Z == '0' && n == 31;

System
(FEAT_PAuth)

313029282726252423222120191817161514131211109876543210
1101010100000011001000x111x11111
CRmop2

Encoding for the AUTIB1716 variant

Applies when (CRm == 0001 && op2 == 110)

AUTIB1716

Encoding for the AUTIBSP variant

Applies when (CRm == 0011 && op2 == 111)

AUTIBSP

Encoding for the AUTIBZ variant

Applies when (CRm == 0011 && op2 == 110)

AUTIBZ

Decode for all variants of this encoding

if !IsFeatureImplemented(FEAT_PAuth) then EndOfDecode(Decode_NOP); end; var d : integer; var n : integer; var source_is_sp : boolean = FALSE; var autib1716 : boolean = FALSE; let auth_combined : boolean = FALSE; case CRm::op2 of when '0011 110' => // AUTIBZ d = 30; n = 31; when '0011 111' => // AUTIBSP d = 30; source_is_sp = TRUE; when '0001 110' => // AUTIB1716 d = 17; n = 16; autib1716 = TRUE; end;

Assembler Symbols


2025-09_rel_asl1 2026-03-12 12:57:38

Copyright © 2010-2025 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.