BRK

Breakpoint instruction

This instruction generates a Breakpoint Instruction exception. The PE records the exception in ESR_ELx, using the EC value 0x3C, and captures the value of the immediate argument in ESR_ELx.ISS.

Within a guarded memory region, while PSTATE.BTYPE != 0b00, a BRK instruction will not generate a Branch Target exception and will generate a Breakpoint Instruction exception as normal. For more information, see PSTATE.BTYPE.

Encoding: System

313029282726252423222120191817161514131211109876543210
1101010000100000
opcimm16op2LL

BRK #<imm>

Decoding algorithm

constant bits(16) comment = imm16;
if IsFeatureImplemented(FEAT_BTI) then
    SetBTypeCompatible(TRUE);

Operation

AArch64.SoftwareBreakpoint(comment);

Explanations

<imm>: Is a 16-bit unsigned immediate, in the range 0 to 65535, encoded in the "imm16" field.