Skip to content

Commit 5f9751d

Browse files
docs: add long_name, description for Q instructions
Descriptions are taken verbatim from the RISC-V ISA specification where applicable, and are marked `normative: true` accordingly. Naming and format follow UnifiedDB conventions.
1 parent d9651e9 commit 5f9751d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+480
-164
lines changed

backends/instructions_appendix/all_instructions.golden.adoc

Lines changed: 184 additions & 68 deletions
Large diffs are not rendered by default.

spec/std/isa/inst/Q/fadd.q.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fadd.q
9-
long_name: Floating-point Add Quad-precision
9+
long_name: Floating-point Add Quad-Precision
1010
description:
1111
- id: inst-fadd.q-behaviour
1212
normative: false

spec/std/isa/inst/Q/fclass.q.yaml

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,35 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fclass.q
9-
long_name: No synopsis available
10-
description: |
11-
No description available.
9+
long_name: Floating-Point Classify Quad-Precision
10+
description:
11+
- id: inst-fclass.q-behaviour
12+
normative: false
13+
text: |
14+
The `fclass.q` instruction examines the value in floating-point register `rs1` and writes to integer
15+
register `rd` a 10-bit mask that indicates the class of the floating-point number.
16+
17+
The format of the mask is described in table given below. The corresponding bit in `rd`
18+
will be set if the property is true and clear otherwise. All other bits in `rd` are cleared.
19+
20+
Note that exactly one bit in `rd` will be set. `fclass.q` does not set the floating-point
21+
exception flags.
22+
23+
.Format of result of `fclass` instruction.
24+
[%autowidth,float="center",align="center",cols="^,<",options="header",]
25+
|===
26+
|_xd_ bit |Meaning
27+
|0 |_fs1_ is latexmath:[$-\infty$].
28+
|1 |_fs1_ is a negative normal number.
29+
|2 |_fs1_ is a negative subnormal number.
30+
|3 |_fs1_ is latexmath:[$-0$].
31+
|4 |_fs1_ is latexmath:[$+0$].
32+
|5 |_fs1_ is a positive subnormal number.
33+
|6 |_fs1_ is a positive normal number.
34+
|7 |_fs1_ is latexmath:[$+\infty$].
35+
|8 |_fs1_ is a signaling NaN.
36+
|9 |_fs1_ is a quiet NaN.
37+
|===
1238
definedBy: Q
1339
assembly: xd, fs1
1440
encoding:

spec/std/isa/inst/Q/fcvt.d.q.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.d.q
9-
long_name: Floating-point Convert Quad-precision to Double-precision
9+
long_name: Floating-Point Convert Quad-Precision to Double-Precision
1010
description:
1111
- id: inst-fcvt.d.q-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.l.q.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.l.q
9-
long_name: Floating-point Convert Quad-precision to Long
9+
long_name: Floating-Point Convert Quad-Precision to Long
1010
description:
1111
- id: inst-fcvt.l.q-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.lu.q.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.lu.q
9-
long_name: Floating-point Convert Quad-precision to Unsigned Long
9+
long_name: Floating-Point Convert Quad-Precision to Unsigned Long
1010
description:
1111
- id: inst-fcvt.lu.q-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.q.d.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.q.d
9-
long_name: Floating-point Convert Double-precision to Quad-precision
9+
long_name: Floating-Point Convert Double-Precision to Quad-Precision
1010
description:
1111
- id: inst-fcvt.q.d-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.q.l.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.q.l
9-
long_name: Floating-point Convert Long to Quad-precision
9+
long_name: Floating-Point Convert Long to Quad-Precision
1010
description:
1111
- id: inst-fcvt.q.l-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.q.lu.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.q.lu
9-
long_name: Floating-point Convert Unsigned Long to Quad-precision
9+
long_name: Floating-Point Convert Unsigned Long to Quad-Precision
1010
description:
1111
- id: inst-fcvt.q.lu-behaviour
1212
normative: false

spec/std/isa/inst/Q/fcvt.q.s.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
$schema: "inst_schema.json#"
77
kind: instruction
88
name: fcvt.q.s
9-
long_name: Floating-point Convert Single-precision to Quad-precision
9+
long_name: Floating-Point Convert Single-Precision to Quad-Precision
1010
description:
1111
- id: inst-fcvt.q.s-behaviour
1212
normative: false

0 commit comments

Comments
 (0)