Skip to content

Commit 8c95734

Browse files
dhower-qcdbrash
andcommitted
data(inst): add long_name and description for sctclr
Co-authored-by: David Brash <[email protected]>
1 parent dfe4494 commit 8c95734

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

arch/inst/Smdbltrp/sctrclr.yaml

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,27 @@
33
$schema: inst_schema.json#
44
kind: instruction
55
name: sctrclr
6-
long_name: No synopsis available.
6+
long_name: Supervisor Control Transfer Record (CTR) clear
77
description: |
8-
No description available.
8+
When `mstateen0.CTR`=1, the SCTRCLR instruction performs the following operations:
9+
10+
* Zeroes all CTR Entry Registers, for all DEPTH values
11+
* Reset to Zero the optional CTR cycle counter where implemented
12+
** `ctrdata.CC` and `ctrdata.CC` bit fields.
13+
14+
Any read of `ctrsource`, `ctrtarget`, or `ctrdata` that follows SCTRCLR, such that it precedes the next
15+
qualified control transfer, will return the value 0.
16+
Further, the first recorded transfer following SCTRCLR will have `ctrdata.CCV`=0.
17+
18+
SCTRCLR execution causes an `IllegalInstruction` exception if:
19+
20+
* `Smctr` is not implemented
21+
* The instruction is executed in S/VS/VU-mode and `Ssctr` is not implemented, or `mstateen0.CTR`=0
22+
* The instruction is executed in U-mode
23+
24+
SCTRCLR execution causes a `VirtualInstruciton` exception if `mstateen0.CTR`=1 and:
25+
* The instruction is executed in VS-mode and `hstateen0.CTR`=0
26+
* The instruction is executed in VU-mode
927
definedBy:
1028
anyOf: [Smctr, Ssctr]
1129
assembly: sctrclr

0 commit comments

Comments
 (0)