cosp
Call Out Speculation
COSP <Xt>
Prevents speculation from determining that the instruction is executed.
Details
Call Out Speculation: prevents speculation from reaching instructions beyond this point until the operand register is committed. This instruction is part of the CSV3 speculation control feature and executes in AArch64 state only. It does not affect any condition flags and requires the source register value to be resolved before execution can proceed speculatively.
Pseudocode Operation
if FEAT_CSV3 == '0' then
UNDEFINED
else
CommitSpeculation(X[t])
Example
COSP x3
Encoding
Binary Layout
1101010100
0
01
011
0111
0011
110
Rt
Operands
-
Xt
Reg
Reference (Arm A64 ISA)
Instruction Forms
| Encoding | Instruction | ISA | Bit pattern | ||
|---|---|---|---|---|---|
| 0xD50B73C0 | COSP RCTX, <Xt> | A64 | 1101010100 | 0 | 01 | 011 | 0111 | 0011 | 110 | Rt |
Description
Clear Other Speculative Prediction Restriction by Context prevents predictions, other than Cache prefetch, Control flow, and Data Value predictions, that predict execution addresses based on information gathered from earlier execution within a particular execution context. Predictions, other than Cache prefetch, Control flow, and Data Value predictions, determined by the actions of code in the target execution context or contexts appearing in program order before the instruction cannot exploitatively control any speculative access occurring after the instruction is complete and synchronized.