gcsss1

Guarded Control Stack Switch Stack 1

GCSSS1 <Xt>

First step to switch the GCS pointer.

Pseudocode Operation

if FEAT_GCS == '0' then
  UNDEFINED
else if PSTATE.EL == EL0 then
  UNDEFINED
else
  GCSSwitchStack1(X[t])

Example

GCSSS1 x3

Encoding

Binary Layout
1101010100
31:22
0
21
01
20:19
011
18:16
0111
15:12
0111
11:8
010
7:5
Rt
4:0
 
Format System
Opcode 0xD50B7740

Operands

  • Xt
    New Stack Ptr

Related

More in FEAT_GCS (Security)

Reference

Instruction Forms

Encoding Instruction ISA Bit pattern
0xD50B7740 GCSSS1 <Xt> A64 1101010100 | 0 | 01 | 011 | 0111 | 0111 | 010 | Rt

Description

Guarded Control Stack Switch Stack 1 validates that the stack being switched to contains a Valid cap entry, stores an In-progress cap entry to the stack that is being switched to, and sets the current Guarded control stack pointer to the stack that is being switched to. If the instruction generates a synchronous Data Abort exception, Watchpoint exception, GPC exception, or GCS Data Check exception, the value of GCSPR_ELx for the current Exception level is restored to the value held in the register before the instruction was executed.