You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* schema: add array form of description
Adds an array form of "description" fields that enables tagged statements.
In this first cut, statements can be tagged as:
- normative or non-normative.
- conditional, using an IDL function to evaluate the condition
* schema: add id field to array form of descriptions
IDs should never change, even if the underlying text changes
* On a trap into HS-mode, hardware writes 1 when the prior mode was VS-mode or VU-mode, and 0 otherwise.
207
+
* On a trap into HS-mode, hardware writes 1 when the prior mode was VS-mode or VU-mode, and 0 otherwise.
191
208
192
-
Can also be written by software without immediate side-effect.
209
+
Can also be written by software without immediate side-effect.
193
210
194
-
Affects execution by:
211
+
Affects execution by:
195
212
196
-
* When an `sret` instruction in executed in HS-mode or M-mode,
197
-
control returns to VS-mode or VU-mode (as selected by `mstatus.SPP`) when
198
-
`hstatus.SPV` is 1 and to HS-mode or U-mode otherwise.
213
+
* When an `sret` instruction in executed in HS-mode or M-mode,
214
+
control returns to VS-mode or VU-mode (as selected by `mstatus.SPP`) when
215
+
`hstatus.SPV` is 1 and to HS-mode or U-mode otherwise.
199
216
type: RW
200
217
reset_value: UNDEFINED_LEGAL
201
218
GVA:
202
219
location: 6
203
-
description: |
204
-
*Guest Virtual Address*
205
-
206
-
Written by hardware whenever a trap is taken into HS-mode:
220
+
long_name: Guest Virtual Address
221
+
description:
222
+
- id: csr-hstatus-gva-behavior
223
+
normative: false
224
+
text: |
225
+
Written by hardware whenever a trap is taken into HS-mode:
207
226
208
-
* Writes 1 when a trap causes a guest virtual address to be written into `stval` (`Breakpoint`, `* Address Misaligned`, `* Access Fault`, `* Page Fault`, or `* Guest-Page Fault`).
209
-
* Writes 0 otherwise
227
+
* Writes 1 when a trap causes a guest virtual address to be written into `stval` (`Breakpoint`, `* Address Misaligned`, `* Access Fault`, `* Page Fault`, or `* Guest-Page Fault`).
228
+
* Writes 0 otherwise
210
229
211
-
Does not affect execution.
230
+
Does not affect execution.
212
231
type: RW
213
232
reset_value: UNDEFINED_LEGAL
214
233
VSBE:
215
234
location: 5
216
-
description: |
217
-
*VS-mode Big Endian*
218
-
219
-
Controls the endianness of data VS-mode (0 = little, 1 = big).
220
-
Instructions are always little endian, regardless of the data setting.
221
-
222
-
[when,"VS_MODE_ENDIANESS == little"]
223
-
Since the CPU does not support big endian in VS-mode, this is hardwired to 0.
224
-
225
-
[when,"VS_MODE_ENDIANESS == bit"]
226
-
Since the CPU does not support little endian in VS-mode, this is hardwired to 1.
235
+
long_name: VS-mode Big Endian
236
+
description:
237
+
- id: csr-hstatus-vgein-behavior
238
+
normative: false
239
+
text: |
240
+
Controls the endianness of data VS-mode (0 = little, 1 = big).
241
+
Instructions are always little endian, regardless of the data setting.
242
+
243
+
- id: csr-hstatus-vgein-little-endian
244
+
normative: false
245
+
text: |
246
+
Since the CPU does not support big endian in VS-mode, this is hardwired to 0.
247
+
when(): return VS_MODE_ENDIANESS == "little";
248
+
249
+
- id: csr-hstatus-vgein-big-endian
250
+
normative: false
251
+
text: |
252
+
Since the CPU does not support little endian in VS-mode, this is hardwired to 1.
0 commit comments