Skip to content

Commit

Permalink
Merge pull request #11 from riscv-software-src/dhower/dev
Browse files Browse the repository at this point in the history
Attach parameters to extensions
  • Loading branch information
dhower-qc authored Jul 31, 2024
2 parents 156721d + 9942c3c commit 1ad462f
Show file tree
Hide file tree
Showing 137 changed files with 3,485 additions and 1,044 deletions.
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter10.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter10:
description: |
Alias for M-mode CSR `mhpmcounter10`.
Privilege mode access is controlled with `mcounteren.HPM10`, `scounteren.HPM10`, and `hcounteren.HPM10` as follows:
Privilege mode access is controlled with `mcounteren.HPM10`
<%- if ext?(:S) -%>
, `scounteren.HPM10`
<%- if ext?(:H) -%>
, and `hcounteren.HPM10`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM10`# .2+h! [.rotate]#`scounteren.HPM10`# .2+h! [.rotate]#`hcounteren.HPM10`#
Expand All @@ -24,6 +32,28 @@ hpmcounter10:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM10`# .2+h! [.rotate]#`scounteren.HPM10`#
2+^.>h! `hpmcounter10` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM10`#
^.>h! `hpmcounter10` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter11.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter11:
description: |
Alias for M-mode CSR `mhpmcounter11`.
Privilege mode access is controlled with `mcounteren.HPM11`, `scounteren.HPM11`, and `hcounteren.HPM11` as follows:
Privilege mode access is controlled with `mcounteren.HPM11`
<%- if ext?(:S) -%>
, `scounteren.HPM11`
<%- if ext?(:H) -%>
, and `hcounteren.HPM11`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM11`# .2+h! [.rotate]#`scounteren.HPM11`# .2+h! [.rotate]#`hcounteren.HPM11`#
Expand All @@ -24,6 +32,28 @@ hpmcounter11:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM11`# .2+h! [.rotate]#`scounteren.HPM11`#
2+^.>h! `hpmcounter11` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM11`#
^.>h! `hpmcounter11` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter12.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter12:
description: |
Alias for M-mode CSR `mhpmcounter12`.
Privilege mode access is controlled with `mcounteren.HPM12`, `scounteren.HPM12`, and `hcounteren.HPM12` as follows:
Privilege mode access is controlled with `mcounteren.HPM12`
<%- if ext?(:S) -%>
, `scounteren.HPM12`
<%- if ext?(:H) -%>
, and `hcounteren.HPM12`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM12`# .2+h! [.rotate]#`scounteren.HPM12`# .2+h! [.rotate]#`hcounteren.HPM12`#
Expand All @@ -24,6 +32,28 @@ hpmcounter12:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM12`# .2+h! [.rotate]#`scounteren.HPM12`#
2+^.>h! `hpmcounter12` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM12`#
^.>h! `hpmcounter12` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter13.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter13:
description: |
Alias for M-mode CSR `mhpmcounter13`.
Privilege mode access is controlled with `mcounteren.HPM13`, `scounteren.HPM13`, and `hcounteren.HPM13` as follows:
Privilege mode access is controlled with `mcounteren.HPM13`
<%- if ext?(:S) -%>
, `scounteren.HPM13`
<%- if ext?(:H) -%>
, and `hcounteren.HPM13`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM13`# .2+h! [.rotate]#`scounteren.HPM13`# .2+h! [.rotate]#`hcounteren.HPM13`#
Expand All @@ -24,6 +32,28 @@ hpmcounter13:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM13`# .2+h! [.rotate]#`scounteren.HPM13`#
2+^.>h! `hpmcounter13` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM13`#
^.>h! `hpmcounter13` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter14.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter14:
description: |
Alias for M-mode CSR `mhpmcounter14`.
Privilege mode access is controlled with `mcounteren.HPM14`, `scounteren.HPM14`, and `hcounteren.HPM14` as follows:
Privilege mode access is controlled with `mcounteren.HPM14`
<%- if ext?(:S) -%>
, `scounteren.HPM14`
<%- if ext?(:H) -%>
, and `hcounteren.HPM14`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM14`# .2+h! [.rotate]#`scounteren.HPM14`# .2+h! [.rotate]#`hcounteren.HPM14`#
Expand All @@ -24,6 +32,28 @@ hpmcounter14:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM14`# .2+h! [.rotate]#`scounteren.HPM14`#
2+^.>h! `hpmcounter14` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM14`#
^.>h! `hpmcounter14` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter15.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter15:
description: |
Alias for M-mode CSR `mhpmcounter15`.
Privilege mode access is controlled with `mcounteren.HPM15`, `scounteren.HPM15`, and `hcounteren.HPM15` as follows:
Privilege mode access is controlled with `mcounteren.HPM15`
<%- if ext?(:S) -%>
, `scounteren.HPM15`
<%- if ext?(:H) -%>
, and `hcounteren.HPM15`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM15`# .2+h! [.rotate]#`scounteren.HPM15`# .2+h! [.rotate]#`hcounteren.HPM15`#
Expand All @@ -24,6 +32,28 @@ hpmcounter15:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM15`# .2+h! [.rotate]#`scounteren.HPM15`#
2+^.>h! `hpmcounter15` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM15`#
^.>h! `hpmcounter15` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter16.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter16:
description: |
Alias for M-mode CSR `mhpmcounter16`.
Privilege mode access is controlled with `mcounteren.HPM16`, `scounteren.HPM16`, and `hcounteren.HPM16` as follows:
Privilege mode access is controlled with `mcounteren.HPM16`
<%- if ext?(:S) -%>
, `scounteren.HPM16`
<%- if ext?(:H) -%>
, and `hcounteren.HPM16`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM16`# .2+h! [.rotate]#`scounteren.HPM16`# .2+h! [.rotate]#`hcounteren.HPM16`#
Expand All @@ -24,6 +32,28 @@ hpmcounter16:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM16`# .2+h! [.rotate]#`scounteren.HPM16`#
2+^.>h! `hpmcounter16` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM16`#
^.>h! `hpmcounter16` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
32 changes: 31 additions & 1 deletion arch/csr/Zihpm/hpmcounter17.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,16 @@ hpmcounter17:
description: |
Alias for M-mode CSR `mhpmcounter17`.
Privilege mode access is controlled with `mcounteren.HPM17`, `scounteren.HPM17`, and `hcounteren.HPM17` as follows:
Privilege mode access is controlled with `mcounteren.HPM17`
<%- if ext?(:S) -%>
, `scounteren.HPM17`
<%- if ext?(:H) -%>
, and `hcounteren.HPM17`
<%- end -%>
<%- end -%>
as follows:
<%- if ext?(:H) -%>
[%autowidth,cols="1,1,1,1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM17`# .2+h! [.rotate]#`scounteren.HPM17`# .2+h! [.rotate]#`hcounteren.HPM17`#
Expand All @@ -24,6 +32,28 @@ hpmcounter17:
! 1 ! 0 ! 1 ! read-only ! `IllegalInstruction` ! read-only ! `VirtualInstruction`
! 1 ! 1 ! 1 ! read-only ! read-only ! read-only ! read-only
!===
<%- elsif ext?(:S) -%>
[%autowidth,cols="1,1,1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM17`# .2+h! [.rotate]#`scounteren.HPM17`#
2+^.>h! `hpmcounter17` behavior
.^h! S-mode .^h! U-mode
! 0 ! - ! `IllegalInstruction` ! `IllegalInstruction`
! 1 ! 0 ! read-only ! `IllegalInstruction`
! 1 ! 1 ! read-only ! read-only
!===
<%- else -%>
[%autowidth,cols="1,1",separator="!"]
!===
.2+h![.rotate]#`mcounteren.HPM17`#
^.>h! `hpmcounter17` behavior
.^h! U-mode
! 0 ! `IllegalInstruction`
! 1 ! read-only
!===
<%- end -%>
priv_mode: U
length: 64
definedBy: Zihpm
Expand Down
Loading

0 comments on commit 1ad462f

Please sign in to comment.