Skip to content

Commit 1ad462f

Browse files
authored
Merge pull request #11 from riscv-software-src/dhower/dev
Attach parameters to extensions
2 parents 156721d + 9942c3c commit 1ad462f

File tree

137 files changed

+3485
-1044
lines changed

Some content is hidden

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

137 files changed

+3485
-1044
lines changed

arch/csr/Zihpm/hpmcounter10.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter10:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter10`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM10`, `scounteren.HPM10`, and `hcounteren.HPM10` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM10`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM10`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM10`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM10`# .2+h! [.rotate]#`scounteren.HPM10`# .2+h! [.rotate]#`hcounteren.HPM10`#
@@ -24,6 +32,28 @@ hpmcounter10:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM10`# .2+h! [.rotate]#`scounteren.HPM10`#
39+
2+^.>h! `hpmcounter10` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM10`#
50+
^.>h! `hpmcounter10` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter11.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter11:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter11`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM11`, `scounteren.HPM11`, and `hcounteren.HPM11` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM11`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM11`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM11`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM11`# .2+h! [.rotate]#`scounteren.HPM11`# .2+h! [.rotate]#`hcounteren.HPM11`#
@@ -24,6 +32,28 @@ hpmcounter11:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM11`# .2+h! [.rotate]#`scounteren.HPM11`#
39+
2+^.>h! `hpmcounter11` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM11`#
50+
^.>h! `hpmcounter11` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter12.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter12:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter12`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM12`, `scounteren.HPM12`, and `hcounteren.HPM12` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM12`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM12`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM12`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM12`# .2+h! [.rotate]#`scounteren.HPM12`# .2+h! [.rotate]#`hcounteren.HPM12`#
@@ -24,6 +32,28 @@ hpmcounter12:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM12`# .2+h! [.rotate]#`scounteren.HPM12`#
39+
2+^.>h! `hpmcounter12` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM12`#
50+
^.>h! `hpmcounter12` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter13.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter13:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter13`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM13`, `scounteren.HPM13`, and `hcounteren.HPM13` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM13`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM13`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM13`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM13`# .2+h! [.rotate]#`scounteren.HPM13`# .2+h! [.rotate]#`hcounteren.HPM13`#
@@ -24,6 +32,28 @@ hpmcounter13:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM13`# .2+h! [.rotate]#`scounteren.HPM13`#
39+
2+^.>h! `hpmcounter13` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM13`#
50+
^.>h! `hpmcounter13` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter14.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter14:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter14`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM14`, `scounteren.HPM14`, and `hcounteren.HPM14` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM14`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM14`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM14`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM14`# .2+h! [.rotate]#`scounteren.HPM14`# .2+h! [.rotate]#`hcounteren.HPM14`#
@@ -24,6 +32,28 @@ hpmcounter14:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM14`# .2+h! [.rotate]#`scounteren.HPM14`#
39+
2+^.>h! `hpmcounter14` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM14`#
50+
^.>h! `hpmcounter14` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter15.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter15:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter15`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM15`, `scounteren.HPM15`, and `hcounteren.HPM15` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM15`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM15`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM15`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM15`# .2+h! [.rotate]#`scounteren.HPM15`# .2+h! [.rotate]#`hcounteren.HPM15`#
@@ -24,6 +32,28 @@ hpmcounter15:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM15`# .2+h! [.rotate]#`scounteren.HPM15`#
39+
2+^.>h! `hpmcounter15` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM15`#
50+
^.>h! `hpmcounter15` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter16.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter16:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter16`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM16`, `scounteren.HPM16`, and `hcounteren.HPM16` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM16`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM16`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM16`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM16`# .2+h! [.rotate]#`scounteren.HPM16`# .2+h! [.rotate]#`hcounteren.HPM16`#
@@ -24,6 +32,28 @@ hpmcounter16:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM16`# .2+h! [.rotate]#`scounteren.HPM16`#
39+
2+^.>h! `hpmcounter16` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM16`#
50+
^.>h! `hpmcounter16` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

arch/csr/Zihpm/hpmcounter17.yaml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ hpmcounter17:
1010
description: |
1111
Alias for M-mode CSR `mhpmcounter17`.
1212
13-
Privilege mode access is controlled with `mcounteren.HPM17`, `scounteren.HPM17`, and `hcounteren.HPM17` as follows:
13+
Privilege mode access is controlled with `mcounteren.HPM17`
14+
<%- if ext?(:S) -%>
15+
, `scounteren.HPM17`
16+
<%- if ext?(:H) -%>
17+
, and `hcounteren.HPM17`
18+
<%- end -%>
19+
<%- end -%>
20+
as follows:
1421
22+
<%- if ext?(:H) -%>
1523
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
1624
!===
1725
.2+h![.rotate]#`mcounteren.HPM17`# .2+h! [.rotate]#`scounteren.HPM17`# .2+h! [.rotate]#`hcounteren.HPM17`#
@@ -24,6 +32,28 @@ hpmcounter17:
2432
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
2533
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
2634
!===
35+
<%- elsif ext?(:S) -%>
36+
[%autowidth,cols="1,1,1,1",separator="!"]
37+
!===
38+
.2+h![.rotate]#`mcounteren.HPM17`# .2+h! [.rotate]#`scounteren.HPM17`#
39+
2+^.>h! `hpmcounter17` behavior
40+
.^h! S-mode .^h! U-mode
41+
42+
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
43+
! 1 ! 0 ! read-only ! `IllegalInstruction`
44+
! 1 ! 1 ! read-only ! read-only
45+
!===
46+
<%- else -%>
47+
[%autowidth,cols="1,1",separator="!"]
48+
!===
49+
.2+h![.rotate]#`mcounteren.HPM17`#
50+
^.>h! `hpmcounter17` behavior
51+
.^h! U-mode
52+
53+
! 0 ! `IllegalInstruction`
54+
! 1 ! read-only
55+
!===
56+
<%- end -%>
2757
priv_mode: U
2858
length: 64
2959
definedBy: Zihpm

0 commit comments

Comments
 (0)