← Home

ESB

Error synchronization barrier

This instruction is an error synchronization event that might also update DISR_EL1 and VDISR_EL2.

This instruction can be used at all Exception levels and in Debug state.

In Debug state, this instruction behaves as if SError interrupts are masked at all Exception levels. For more information, see RAS PE architecture and Arm® Reliability, Availability, and Serviceability (RAS) System Architecture, for A-profile architecture (ARM IHI 0100).

If FEAT_RAS is not implemented, this instruction executes as a NOP.

System class

(FEAT_RAS)

313029282726252423222120191817161514131211109876543210
11010101000000110010001000011111
CRmop2

Encoding

ESB

Decode

if !IsFeatureImplemented(FEAT_RAS) then EndOfDecode(Decode_NOP);

Operation

SynchronizeErrors(); AArch64.ESBOperation(); if PSTATE.EL IN {EL0, EL1} && EL2Enabled() then AArch64.vESBOperation(); elsif IsFeatureImplemented(FEAT_E3DSE) && PSTATE.EL != EL3 then AArch64.dESBOperation(); TakeUnmaskedSErrorInterrupts();


Version 2025.09 — Copyright © 2010-2025 Arm Limited or its affiliates.

This site is provided as a community resource and is NOT affiliated with nor endorsed by Arm Limited.