GCSSS2, Guarded Control Stack Switch Stack 2

The GCSSS2 characteristics are:

Purpose

Validates that the most recent entry of the Guarded Control Stack that is getting switched to contains an In-progress cap entry, stores a Valid cap entry to the Guarded Control Stack that is getting switched from, and sets Xt to the address of that Valid cap entry.

Configuration

This instruction is present only when FEAT_GCS is implemented. Otherwise, direct accesses to GCSSS2 are UNDEFINED.

Attributes

GCSSS2 is a 64-bit System instruction.

Field descriptions

6362616059585756555453525150494847464544434241403938373635343332
313029282726252423222120191817161514131211109876543210
Output address, for the outgoing Guarded Control Stack
Output address, for the outgoing Guarded Control Stack

Bits [63:0]

Output address, for the outgoing Guarded Control Stack.

Executing GCSSS2

Accesses to this instruction use the following encodings in the System instruction encoding space:

GCSSS2 <Xt>

op0op1CRnCRmop2
0b010b0110b01110b01110b011

if PSTATE.EL == EL0 then X[t, 64] = GCSSS2(); elsif PSTATE.EL == EL1 then X[t, 64] = GCSSS2(); elsif PSTATE.EL == EL2 then X[t, 64] = GCSSS2(); elsif PSTATE.EL == EL3 then X[t, 64] = GCSSS2();


26/03/2024 09:49; 67c0ae5282a7629ba0ea0ba7267b43cd4f7939f6

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