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
Operands
-
Xt
New Stack Ptr
Related
More in FEAT_GCS (Security)
Reference
View in Arm A64 ISA Reference ↗
Arm A64 ISA
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.