udb 0.1.14 → 0.1.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.data/cfgs/example_rv64_with_overlay.yaml +6 -6
- data/.data/cfgs/mc100-32-full-example.yaml +3 -2
- data/.data/cfgs/profile/RVA20S64.yaml +2 -0
- data/.data/cfgs/profile/RVA20U64.yaml +2 -0
- data/.data/cfgs/profile/RVA22S64.yaml +2 -0
- data/.data/cfgs/profile/RVA22U64.yaml +2 -0
- data/.data/cfgs/profile/RVA23S64.yaml +2 -0
- data/.data/cfgs/profile/RVA23U64.yaml +2 -0
- data/.data/cfgs/profile/RVB23S64.yaml +2 -0
- data/.data/cfgs/profile/RVB23U64.yaml +2 -0
- data/.data/cfgs/qc_iu.yaml +3 -2
- data/.data/cfgs/rv32-riscv-tests.yaml +5 -4
- data/.data/cfgs/rv32-vector.yaml +5 -4
- data/.data/cfgs/rv64-riscv-tests.yaml +5 -4
- data/.data/cfgs/rv64-vector.yaml +5 -4
- data/.data/spec/schemas/README.adoc +3 -0
- data/.data/spec/schemas/schema_defs.json +3 -3
- data/.data/spec/std/isa/csr/H/hcounteren.layout +3 -3
- data/.data/spec/std/isa/csr/H/hcounteren.yaml +31 -31
- data/.data/spec/std/isa/csr/H/henvcfg.yaml +1 -1
- data/.data/spec/std/isa/csr/H/htimedeltah.yaml +1 -1
- data/.data/spec/std/isa/csr/H/htinst.yaml +3 -3
- data/.data/spec/std/isa/csr/H/htval.yaml +3 -3
- data/.data/spec/std/isa/csr/H/mtinst.yaml +1 -1
- data/.data/spec/std/isa/csr/Smcntrpmf/mcyclecfg.yaml +1 -1
- data/.data/spec/std/isa/csr/Smcntrpmf/mcyclecfgh.yaml +1 -1
- data/.data/spec/std/isa/csr/Smcntrpmf/minstretcfg.yaml +1 -1
- data/.data/spec/std/isa/csr/Smcntrpmf/minstretcfgh.yaml +1 -1
- data/.data/spec/std/isa/csr/Smctr/vsctrctl.yaml +1 -1
- data/.data/spec/std/isa/csr/Sscofpmf/scountovf.layout +1 -1
- data/.data/spec/std/isa/csr/Sscofpmf/scountovf.yaml +29 -29
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter10.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter10h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter11.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter11h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter12.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter12h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter13.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter13h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter14.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter14h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter15.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter15h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter16.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter16h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter17.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter17h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter18.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter18h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter19.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter19h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter20.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter20h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter21.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter21h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter22.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter22h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter23.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter23h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter24.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter24h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter25.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter25h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter26.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter26h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter27.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter27h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter28.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter28h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter29.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter29h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter3.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter30.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter30h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter31.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter31h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter3h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter4.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter4h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter5.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter5h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter6.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter6h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter7.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter7h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter8.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter8h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter9.yaml +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounter9h.yaml +1 -1
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounterN.layout +4 -4
- data/.data/spec/std/isa/csr/Zihpm/mhpmcounterNh.layout +1 -1
- data/.data/spec/std/isa/csr/hstateen0h.yaml +1 -1
- data/.data/spec/std/isa/csr/hstateen1h.yaml +1 -1
- data/.data/spec/std/isa/csr/hstateen2h.yaml +1 -1
- data/.data/spec/std/isa/csr/hstateen3h.yaml +1 -1
- data/.data/spec/std/isa/csr/hstatus.yaml +1 -1
- data/.data/spec/std/isa/csr/instreth.yaml +1 -3
- data/.data/spec/std/isa/csr/mcycle.yaml +6 -6
- data/.data/spec/std/isa/csr/minstret.yaml +3 -3
- data/.data/spec/std/isa/csr/minstreth.yaml +2 -2
- data/.data/spec/std/isa/csr/mstatus.yaml +14 -20
- data/.data/spec/std/isa/csr/mstatush.yaml +1 -1
- data/.data/spec/std/isa/csr/mtvec.yaml +16 -57
- data/.data/spec/std/isa/csr/senvcfg.yaml +1 -1
- data/.data/spec/std/isa/csr/sepc.yaml +4 -3
- data/.data/spec/std/isa/csr/sie.yaml +30 -4
- data/.data/spec/std/isa/csr/sip.yaml +17 -3
- data/.data/spec/std/isa/csr/sscratch.yaml +3 -2
- data/.data/spec/std/isa/csr/stval.yaml +3 -2
- data/.data/spec/std/isa/csr/stvec.yaml +14 -14
- data/.data/spec/std/isa/csr/time.yaml +1 -1
- data/.data/spec/std/isa/csr/timeh.yaml +1 -1
- data/.data/spec/std/isa/csr/vsepc.yaml +6 -5
- data/.data/spec/std/isa/csr/vstval.yaml +1 -1
- data/.data/spec/std/isa/csr/vstvec.yaml +17 -17
- data/.data/spec/std/isa/ext/M.yaml +4 -0
- data/.data/spec/std/isa/ext/Q.yaml +1 -1
- data/.data/spec/std/isa/ext/Shgatpa.yaml +1 -0
- data/.data/spec/std/isa/ext/Shlcofideleg.yaml +24 -0
- data/.data/spec/std/isa/ext/Shvstvecd.yaml +2 -2
- data/.data/spec/std/isa/ext/Sspm.yaml +5 -0
- data/.data/spec/std/isa/ext/Sstvecd.yaml +2 -2
- data/.data/spec/std/isa/ext/Sstvecv.yaml +2 -2
- data/.data/spec/std/isa/ext/Supm.yaml +17 -0
- data/.data/spec/std/isa/ext/Zcb.yaml +3 -0
- data/.data/spec/std/isa/ext/Zfbfmin.yaml +3 -5
- data/.data/spec/std/isa/ext/Zibi.yaml +29 -0
- data/.data/spec/std/isa/ext/Ziccid.yaml +29 -0
- data/.data/spec/std/isa/ext/Zicfilp.yaml +5 -1
- data/.data/spec/std/isa/ext/Zicfiss.yaml +20 -1
- data/.data/spec/std/isa/ext/Zihpm.yaml +3 -0
- data/.data/spec/std/isa/ext/Zilx.yaml +58 -0
- data/.data/spec/std/isa/ext/Zkt.yaml +33 -1
- data/.data/spec/std/isa/ext/Zvabd.yaml +21 -0
- data/.data/spec/std/isa/ext/Zvbc.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvkb.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvkg.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvkned.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvknha.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvknhb.yaml +4 -2
- data/.data/spec/std/isa/ext/Zvksed.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvksh.yaml +3 -0
- data/.data/spec/std/isa/ext/Zvkt.yaml +3 -0
- data/.data/spec/std/isa/inst/B/roriw.yaml +1 -1
- data/.data/spec/std/isa/inst/B/rorw.yaml +1 -1
- data/.data/spec/std/isa/inst/C/c.add.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.addi.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.addiw.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.addw.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.and.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.andi.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.lui.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.mv.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.nop.yaml +13 -2
- data/.data/spec/std/isa/inst/C/c.or.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.slli.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.srai.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.srli.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.sub.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.subw.yaml +1 -0
- data/.data/spec/std/isa/inst/C/c.xor.yaml +1 -0
- data/.data/spec/std/isa/inst/D/fld.yaml +1 -0
- data/.data/spec/std/isa/inst/D/fsd.yaml +1 -0
- data/.data/spec/std/isa/inst/F/fadd.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.l.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.lu.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.s.l.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.s.lu.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.s.wu.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.w.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fcvt.wu.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fdiv.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/feq.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fle.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/flt.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/flw.yaml +2 -1
- data/.data/spec/std/isa/inst/F/fmadd.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fmax.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fmin.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fmsub.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fmul.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fmv.w.x.yaml +4 -1
- data/.data/spec/std/isa/inst/F/fmv.x.w.yaml +4 -1
- data/.data/spec/std/isa/inst/F/fnmadd.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fnmsub.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsgnj.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsgnjn.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsgnjx.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsqrt.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsub.s.yaml +1 -1
- data/.data/spec/std/isa/inst/F/fsw.yaml +2 -1
- data/.data/spec/std/isa/inst/I/sd.yaml +1 -1
- data/.data/spec/std/isa/inst/M/mul.yaml +1 -3
- data/.data/spec/std/isa/inst/M/mulh.yaml +1 -3
- data/.data/spec/std/isa/inst/M/mulhsu.yaml +1 -3
- data/.data/spec/std/isa/inst/M/mulhu.yaml +1 -3
- data/.data/spec/std/isa/inst/M/mulw.yaml +1 -3
- data/.data/spec/std/isa/inst/Q/fadd.q.yaml +2 -2
- data/.data/spec/std/isa/inst/Q/fclass.q.yaml +5 -5
- data/.data/spec/std/isa/inst/Q/flq.yaml +1 -0
- data/.data/spec/std/isa/inst/Q/fsq.yaml +1 -0
- data/.data/spec/std/isa/inst/V/vmv.v.i.yaml +1 -0
- data/.data/spec/std/isa/inst/Zbb/ctzw.yaml +6 -1
- data/.data/spec/std/isa/inst/Zcb/c.mul.yaml +1 -0
- data/.data/spec/std/isa/inst/Zcb/c.not.yaml +1 -0
- data/.data/spec/std/isa/inst/Zcb/c.zext.b.yaml +2 -7
- data/.data/spec/std/isa/inst/Zcb/c.zext.w.yaml +1 -1
- data/.data/spec/std/isa/inst/Zcmop/c.mop.1.yaml +2 -0
- data/.data/spec/std/isa/inst/Zcmop/c.mop.5.yaml +2 -0
- data/.data/spec/std/isa/inst/Zcmop/c.mop.N.layout +7 -0
- data/.data/spec/std/isa/inst/{Q → Zfa}/fleq.q.yaml +0 -1
- data/.data/spec/std/isa/inst/{F → Zfa}/fleq.s.yaml +1 -1
- data/.data/spec/std/isa/inst/{Q → Zfa}/fli.q.yaml +1 -1
- data/.data/spec/std/isa/inst/Zfa/fli.s.yaml +1 -1
- data/.data/spec/std/isa/inst/{Q → Zfa}/fltq.q.yaml +2 -3
- data/.data/spec/std/isa/inst/{F → Zfa}/fltq.s.yaml +1 -1
- data/.data/spec/std/isa/inst/{Q → Zfa}/fmaxm.q.yaml +0 -1
- data/.data/spec/std/isa/inst/Zfa/fmaxm.s.yaml +1 -1
- data/.data/spec/std/isa/inst/{Q → Zfa}/fminm.q.yaml +0 -1
- data/.data/spec/std/isa/inst/Zfa/fminm.s.yaml +1 -1
- data/.data/spec/std/isa/inst/{Q → Zfa}/fmvp.q.x.yaml +1 -1
- data/.data/spec/std/isa/inst/Zfa/fround.s.yaml +1 -1
- data/.data/spec/std/isa/inst/Zfa/froundnx.s.yaml +1 -1
- data/.data/spec/std/isa/inst/Zfh/flh.yaml +5 -2
- data/.data/spec/std/isa/inst/Zfh/fmv.h.x.yaml +3 -1
- data/.data/spec/std/isa/inst/Zfh/fmv.x.h.yaml +3 -1
- data/.data/spec/std/isa/inst/Zfh/fsh.yaml +4 -1
- data/.data/spec/std/isa/inst/Zibi/beqi.yaml +45 -0
- data/.data/spec/std/isa/inst/Zibi/bnei.yaml +45 -0
- data/.data/spec/std/isa/inst/Zicbom/cbo.inval.yaml +1 -1
- data/.data/spec/std/isa/inst/Zicfiss/c.sspopchk.yaml +30 -0
- data/.data/spec/std/isa/inst/Zicfiss/c.sspush.yaml +29 -0
- data/.data/spec/std/isa/inst/Zicfiss/ssamoswap.d.yaml +1 -1
- data/.data/spec/std/isa/inst/Zicfiss/ssamoswap.w.yaml +1 -1
- data/.data/spec/std/isa/inst/Zicfiss/sspopchk.yaml +63 -0
- data/.data/spec/std/isa/inst/Zicfiss/sspush.yaml +63 -0
- data/.data/spec/std/isa/inst/Zicond/czero.eqz.yaml +1 -1
- data/.data/spec/std/isa/inst/Zicond/czero.nez.yaml +1 -1
- data/.data/spec/std/isa/inst/Zicsr/csrrw.yaml +12 -0
- data/.data/spec/std/isa/inst/Zilx/lxd.yaml +38 -0
- data/.data/spec/std/isa/inst/Zilx/lxh.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxhu.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxsb.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsbu.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsd.yaml +38 -0
- data/.data/spec/std/isa/inst/Zilx/lxsh.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxshu.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwb.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwbu.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwd.yaml +39 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwh.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwhu.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuww.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsuwwu.yaml +40 -0
- data/.data/spec/std/isa/inst/Zilx/lxsw.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxswu.yaml +39 -0
- data/.data/spec/std/isa/inst/Zilx/lxw.yaml +35 -0
- data/.data/spec/std/isa/inst/Zilx/lxwu.yaml +39 -0
- data/.data/spec/std/isa/inst/Zimop/mop.r.28.yaml +1 -2
- data/.data/spec/std/isa/inst/Zimop/mop.r.N.layout +1 -2
- data/.data/spec/std/isa/inst/Zimop/mop.rr.7.yaml +1 -2
- data/.data/spec/std/isa/inst/Zimop/mop.rr.N.layout +1 -2
- data/.data/spec/std/isa/inst/Zvabd/vabd.vv.yaml +67 -0
- data/.data/spec/std/isa/inst/Zvabd/vabdu.vv.yaml +67 -0
- data/.data/spec/std/isa/inst/Zvabd/vabs.v.yaml +61 -0
- data/.data/spec/std/isa/inst/Zvabd/vwabda.vv.yaml +72 -0
- data/.data/spec/std/isa/inst/Zvabd/vwabdau.vv.yaml +72 -0
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vandn.vv.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vandn.vx.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vbrev8.v.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vrev8.v.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vrol.vv.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vrol.vx.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vror.vi.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vror.vv.yaml +1 -1
- data/.data/spec/std/isa/inst/{Zvbb → Zvkb}/vror.vx.yaml +1 -1
- data/.data/spec/std/isa/isa/fp.idl +42 -18
- data/.data/spec/std/isa/isa/globals.isa +1 -1
- data/.data/spec/std/isa/isa/util.idl +3 -3
- data/.data/spec/std/isa/param/CACHE_BLOCK_SIZE.yaml +70 -6
- data/.data/spec/std/isa/param/COUNTINHIBIT_EN.yaml +9 -0
- data/.data/spec/std/isa/param/ELEN.yaml +27 -5
- data/.data/spec/std/isa/param/HCONTEXT_AVAILABLE.yaml +1 -1
- data/.data/spec/std/isa/param/HCOUNTENABLE_EN.yaml +13 -0
- data/.data/spec/std/isa/param/HPM_COUNTER_EN.yaml +13 -3
- data/.data/spec/std/isa/param/HPM_EVENTS.yaml +0 -3
- data/.data/spec/std/isa/param/MCOUNTENABLE_EN.yaml +8 -0
- data/.data/spec/std/isa/param/MTVEC_BASE_ALIGNMENT_DIRECT.yaml +71 -65
- data/.data/spec/std/isa/param/MTVEC_BASE_ALIGNMENT_VECTORED.yaml +71 -65
- data/.data/spec/std/isa/param/MUTABLE_MISA_H.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_S.yaml +1 -1
- data/.data/spec/std/isa/param/STVAL_WIDTH.yaml +3 -2
- data/.data/spec/std/isa/param/STVEC_BASE_ALIGNMENT_VECTORED.yaml +100 -0
- data/.data/spec/std/isa/param/STVEC_MODES.yaml +31 -0
- data/.data/spec/std/isa/param/SV32_VSMODE_TRANSLATION.yaml +1 -1
- data/.data/spec/std/isa/param/SXLEN.yaml +2 -2
- data/.data/spec/std/isa/param/TINST_VALUE_ON_FINAL_INSTRUCTION_GUEST_PAGE_FAULT.yaml +1 -1
- data/.data/spec/std/isa/param/TINST_VALUE_ON_FINAL_LOAD_GUEST_PAGE_FAULT.yaml +1 -1
- data/.data/spec/std/isa/param/TINST_VALUE_ON_FINAL_STORE_AMO_GUEST_PAGE_FAULT.yaml +1 -1
- data/.data/spec/std/isa/param/TINST_VALUE_ON_LOAD_ADDRESS_MISALIGNED.yaml +1 -1
- data/.data/spec/std/isa/param/TINST_VALUE_ON_STORE_AMO_ADDRESS_MISALIGNED.yaml +1 -1
- data/.data/spec/std/isa/param/UXLEN.yaml +1 -1
- data/.data/spec/std/isa/param/VLEN.yaml +16 -7
- data/.data/spec/std/isa/param/VSTVEC_MODES.yaml +31 -0
- data/lib/udb/Z3_VERSION +1 -1
- data/lib/udb/config.rb +1 -1
- data/lib/udb/obj/csr.rb +1 -1
- data/lib/udb/obj/csr_field.rb +1 -1
- data/lib/udb/obj/extension.rb +1 -1
- data/lib/udb/version.rb +1 -1
- data/lib/udb/version_spec.rb +1 -1
- data/lib/udb/z3.rb +29 -7
- metadata +80 -50
- data/.data/spec/std/isa/inst/Zicfiss/sspopchk.x1.yaml +0 -25
- data/.data/spec/std/isa/inst/Zicfiss/sspopchk.x5.yaml +0 -25
- data/.data/spec/std/isa/inst/Zicfiss/sspush.x1.yaml +0 -25
- data/.data/spec/std/isa/inst/Zicfiss/sspush.x5.yaml +0 -25
- data/.data/spec/std/isa/param/STVEC_MODE_DIRECT.yaml +0 -21
- data/.data/spec/std/isa/param/STVEC_MODE_VECTORED.yaml +0 -19
- data/.data/spec/std/isa/param/VSTVEC_MODE_DIRECT.yaml +0 -21
- data/.data/spec/std/isa/param/VSTVEC_MODE_VECTORED.yaml +0 -21
- /data/.data/spec/std/isa/inst/{Smdbltrp → Smctr}/sctrclr.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fcvtmod.w.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fleq.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fleq.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fli.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fli.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fltq.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fltq.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fmaxm.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fmaxm.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fminm.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fminm.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fmvh.x.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Q → Zfa}/fmvh.x.q.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fmvp.d.x.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/fround.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/fround.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Q → Zfa}/fround.q.yaml +0 -0
- /data/.data/spec/std/isa/inst/{D → Zfa}/froundnx.d.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Zfh → Zfa}/froundnx.h.yaml +0 -0
- /data/.data/spec/std/isa/inst/{Q → Zfa}/froundnx.q.yaml +0 -0
|
@@ -10,9 +10,9 @@ address: 0x64a
|
|
|
10
10
|
writable: true
|
|
11
11
|
long_name: Hypervisor Trap Instruction Register
|
|
12
12
|
description: |
|
|
13
|
-
When a trap is taken into HS-mode,
|
|
13
|
+
When a trap is taken into HS-mode, htinst is written with a value that, if nonzero,
|
|
14
14
|
provides information about the instruction that trapped, to assist software in handling the trap.
|
|
15
|
-
The values that may be written to
|
|
15
|
+
The values that may be written to htinst on a trap are documented in TODO.
|
|
16
16
|
|
|
17
17
|
htinst is a WARL register that need only be able to hold the values that the implementation may automatically write to it on a trap.
|
|
18
18
|
priv_mode: S
|
|
@@ -34,7 +34,7 @@ fields:
|
|
|
34
34
|
|| (TINST_VALUE_ON_LOAD_ADDRESS_MISALIGNED != "always zero")
|
|
35
35
|
|| (TINST_VALUE_ON_LOAD_ACCESS_FAULT != "always zero")
|
|
36
36
|
|| (TINST_VALUE_ON_STORE_AMO_ADDRESS_MISALIGNED != "always zero")
|
|
37
|
-
|| (TINST_VALUE_ON_STORE_AMO_ACCESS_FAULT != "
|
|
37
|
+
|| (TINST_VALUE_ON_STORE_AMO_ACCESS_FAULT != "always zero")
|
|
38
38
|
|| (TINST_VALUE_ON_UCALL != "always zero")
|
|
39
39
|
|| (TINST_VALUE_ON_SCALL != "always zero")
|
|
40
40
|
|| (TINST_VALUE_ON_MCALL != "always zero")
|
|
@@ -19,8 +19,8 @@ description: |
|
|
|
19
19
|
Otherwise, for misaligned loads and stores that cause guest-page faults, a nonzero guest physical address in htval corresponds to the faulting portion of the access as indicated by the virtual address in stval. For instruction guest-page faults on systems with variable-length instructions, a nonzero htval corresponds to the faulting portion of the instruction as indicated by the virtual address in stval.
|
|
20
20
|
|
|
21
21
|
htval is a WARL register that must be able to hold zero and may be capable of holding only an arbitrary subset of other 2-bit-shifted guest physical addresses, if any.
|
|
22
|
-
priv_mode:
|
|
23
|
-
length:
|
|
22
|
+
priv_mode: S
|
|
23
|
+
length: SXLEN
|
|
24
24
|
definedBy:
|
|
25
25
|
extension:
|
|
26
26
|
name: H
|
|
@@ -38,5 +38,5 @@ fields:
|
|
|
38
38
|
return CsrFieldType::RO;
|
|
39
39
|
}
|
|
40
40
|
description: |
|
|
41
|
-
Exception-specific information for a trap into
|
|
41
|
+
Exception-specific information for a trap into HS-mode.
|
|
42
42
|
reset_value: UNDEFINED_LEGAL
|
|
@@ -34,7 +34,7 @@ fields:
|
|
|
34
34
|
|| (TINST_VALUE_ON_LOAD_ADDRESS_MISALIGNED != "always zero")
|
|
35
35
|
|| (TINST_VALUE_ON_LOAD_ACCESS_FAULT != "always zero")
|
|
36
36
|
|| (TINST_VALUE_ON_STORE_AMO_ADDRESS_MISALIGNED != "always zero")
|
|
37
|
-
|| (TINST_VALUE_ON_STORE_AMO_ACCESS_FAULT != "
|
|
37
|
+
|| (TINST_VALUE_ON_STORE_AMO_ACCESS_FAULT != "always zero")
|
|
38
38
|
|| (TINST_VALUE_ON_UCALL != "always zero")
|
|
39
39
|
|| (TINST_VALUE_ON_SCALL != "always zero")
|
|
40
40
|
|| (TINST_VALUE_ON_MCALL != "always zero")
|
|
@@ -41,7 +41,7 @@ fields:
|
|
|
41
41
|
[when="HPM_COUNTER_EN[<%= of_num %>] == false"]
|
|
42
42
|
This field is read-only zero because the counter is not enabled.
|
|
43
43
|
type(): |
|
|
44
|
-
return HPM_COUNTER_EN[<%= of_num %>] ? CsrFieldType::
|
|
44
|
+
return HPM_COUNTER_EN[<%= of_num %>] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
45
45
|
reset_value(): |
|
|
46
46
|
return HPM_COUNTER_EN[<%= of_num %>] ? UNDEFINED_LEGAL : 0;
|
|
47
47
|
<%- end -%>
|
|
@@ -43,7 +43,7 @@ fields:
|
|
|
43
43
|
[when="HPM_COUNTER_EN[3] == false"]
|
|
44
44
|
This field is read-only zero because the counter is not enabled.
|
|
45
45
|
type(): |
|
|
46
|
-
return HPM_COUNTER_EN[3] ? CsrFieldType::
|
|
46
|
+
return HPM_COUNTER_EN[3] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
47
47
|
reset_value(): |
|
|
48
48
|
return HPM_COUNTER_EN[3] ? UNDEFINED_LEGAL : 0;
|
|
49
49
|
OF4:
|
|
@@ -56,7 +56,7 @@ fields:
|
|
|
56
56
|
[when="HPM_COUNTER_EN[4] == false"]
|
|
57
57
|
This field is read-only zero because the counter is not enabled.
|
|
58
58
|
type(): |
|
|
59
|
-
return HPM_COUNTER_EN[4] ? CsrFieldType::
|
|
59
|
+
return HPM_COUNTER_EN[4] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
60
60
|
reset_value(): |
|
|
61
61
|
return HPM_COUNTER_EN[4] ? UNDEFINED_LEGAL : 0;
|
|
62
62
|
OF5:
|
|
@@ -69,7 +69,7 @@ fields:
|
|
|
69
69
|
[when="HPM_COUNTER_EN[5] == false"]
|
|
70
70
|
This field is read-only zero because the counter is not enabled.
|
|
71
71
|
type(): |
|
|
72
|
-
return HPM_COUNTER_EN[5] ? CsrFieldType::
|
|
72
|
+
return HPM_COUNTER_EN[5] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
73
73
|
reset_value(): |
|
|
74
74
|
return HPM_COUNTER_EN[5] ? UNDEFINED_LEGAL : 0;
|
|
75
75
|
OF6:
|
|
@@ -82,7 +82,7 @@ fields:
|
|
|
82
82
|
[when="HPM_COUNTER_EN[6] == false"]
|
|
83
83
|
This field is read-only zero because the counter is not enabled.
|
|
84
84
|
type(): |
|
|
85
|
-
return HPM_COUNTER_EN[6] ? CsrFieldType::
|
|
85
|
+
return HPM_COUNTER_EN[6] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
86
86
|
reset_value(): |
|
|
87
87
|
return HPM_COUNTER_EN[6] ? UNDEFINED_LEGAL : 0;
|
|
88
88
|
OF7:
|
|
@@ -95,7 +95,7 @@ fields:
|
|
|
95
95
|
[when="HPM_COUNTER_EN[7] == false"]
|
|
96
96
|
This field is read-only zero because the counter is not enabled.
|
|
97
97
|
type(): |
|
|
98
|
-
return HPM_COUNTER_EN[7] ? CsrFieldType::
|
|
98
|
+
return HPM_COUNTER_EN[7] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
99
99
|
reset_value(): |
|
|
100
100
|
return HPM_COUNTER_EN[7] ? UNDEFINED_LEGAL : 0;
|
|
101
101
|
OF8:
|
|
@@ -108,7 +108,7 @@ fields:
|
|
|
108
108
|
[when="HPM_COUNTER_EN[8] == false"]
|
|
109
109
|
This field is read-only zero because the counter is not enabled.
|
|
110
110
|
type(): |
|
|
111
|
-
return HPM_COUNTER_EN[8] ? CsrFieldType::
|
|
111
|
+
return HPM_COUNTER_EN[8] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
112
112
|
reset_value(): |
|
|
113
113
|
return HPM_COUNTER_EN[8] ? UNDEFINED_LEGAL : 0;
|
|
114
114
|
OF9:
|
|
@@ -121,7 +121,7 @@ fields:
|
|
|
121
121
|
[when="HPM_COUNTER_EN[9] == false"]
|
|
122
122
|
This field is read-only zero because the counter is not enabled.
|
|
123
123
|
type(): |
|
|
124
|
-
return HPM_COUNTER_EN[9] ? CsrFieldType::
|
|
124
|
+
return HPM_COUNTER_EN[9] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
125
125
|
reset_value(): |
|
|
126
126
|
return HPM_COUNTER_EN[9] ? UNDEFINED_LEGAL : 0;
|
|
127
127
|
OF10:
|
|
@@ -134,7 +134,7 @@ fields:
|
|
|
134
134
|
[when="HPM_COUNTER_EN[10] == false"]
|
|
135
135
|
This field is read-only zero because the counter is not enabled.
|
|
136
136
|
type(): |
|
|
137
|
-
return HPM_COUNTER_EN[10] ? CsrFieldType::
|
|
137
|
+
return HPM_COUNTER_EN[10] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
138
138
|
reset_value(): |
|
|
139
139
|
return HPM_COUNTER_EN[10] ? UNDEFINED_LEGAL : 0;
|
|
140
140
|
OF11:
|
|
@@ -147,7 +147,7 @@ fields:
|
|
|
147
147
|
[when="HPM_COUNTER_EN[11] == false"]
|
|
148
148
|
This field is read-only zero because the counter is not enabled.
|
|
149
149
|
type(): |
|
|
150
|
-
return HPM_COUNTER_EN[11] ? CsrFieldType::
|
|
150
|
+
return HPM_COUNTER_EN[11] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
151
151
|
reset_value(): |
|
|
152
152
|
return HPM_COUNTER_EN[11] ? UNDEFINED_LEGAL : 0;
|
|
153
153
|
OF12:
|
|
@@ -160,7 +160,7 @@ fields:
|
|
|
160
160
|
[when="HPM_COUNTER_EN[12] == false"]
|
|
161
161
|
This field is read-only zero because the counter is not enabled.
|
|
162
162
|
type(): |
|
|
163
|
-
return HPM_COUNTER_EN[12] ? CsrFieldType::
|
|
163
|
+
return HPM_COUNTER_EN[12] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
164
164
|
reset_value(): |
|
|
165
165
|
return HPM_COUNTER_EN[12] ? UNDEFINED_LEGAL : 0;
|
|
166
166
|
OF13:
|
|
@@ -173,7 +173,7 @@ fields:
|
|
|
173
173
|
[when="HPM_COUNTER_EN[13] == false"]
|
|
174
174
|
This field is read-only zero because the counter is not enabled.
|
|
175
175
|
type(): |
|
|
176
|
-
return HPM_COUNTER_EN[13] ? CsrFieldType::
|
|
176
|
+
return HPM_COUNTER_EN[13] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
177
177
|
reset_value(): |
|
|
178
178
|
return HPM_COUNTER_EN[13] ? UNDEFINED_LEGAL : 0;
|
|
179
179
|
OF14:
|
|
@@ -186,7 +186,7 @@ fields:
|
|
|
186
186
|
[when="HPM_COUNTER_EN[14] == false"]
|
|
187
187
|
This field is read-only zero because the counter is not enabled.
|
|
188
188
|
type(): |
|
|
189
|
-
return HPM_COUNTER_EN[14] ? CsrFieldType::
|
|
189
|
+
return HPM_COUNTER_EN[14] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
190
190
|
reset_value(): |
|
|
191
191
|
return HPM_COUNTER_EN[14] ? UNDEFINED_LEGAL : 0;
|
|
192
192
|
OF15:
|
|
@@ -199,7 +199,7 @@ fields:
|
|
|
199
199
|
[when="HPM_COUNTER_EN[15] == false"]
|
|
200
200
|
This field is read-only zero because the counter is not enabled.
|
|
201
201
|
type(): |
|
|
202
|
-
return HPM_COUNTER_EN[15] ? CsrFieldType::
|
|
202
|
+
return HPM_COUNTER_EN[15] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
203
203
|
reset_value(): |
|
|
204
204
|
return HPM_COUNTER_EN[15] ? UNDEFINED_LEGAL : 0;
|
|
205
205
|
OF16:
|
|
@@ -212,7 +212,7 @@ fields:
|
|
|
212
212
|
[when="HPM_COUNTER_EN[16] == false"]
|
|
213
213
|
This field is read-only zero because the counter is not enabled.
|
|
214
214
|
type(): |
|
|
215
|
-
return HPM_COUNTER_EN[16] ? CsrFieldType::
|
|
215
|
+
return HPM_COUNTER_EN[16] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
216
216
|
reset_value(): |
|
|
217
217
|
return HPM_COUNTER_EN[16] ? UNDEFINED_LEGAL : 0;
|
|
218
218
|
OF17:
|
|
@@ -225,7 +225,7 @@ fields:
|
|
|
225
225
|
[when="HPM_COUNTER_EN[17] == false"]
|
|
226
226
|
This field is read-only zero because the counter is not enabled.
|
|
227
227
|
type(): |
|
|
228
|
-
return HPM_COUNTER_EN[17] ? CsrFieldType::
|
|
228
|
+
return HPM_COUNTER_EN[17] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
229
229
|
reset_value(): |
|
|
230
230
|
return HPM_COUNTER_EN[17] ? UNDEFINED_LEGAL : 0;
|
|
231
231
|
OF18:
|
|
@@ -238,7 +238,7 @@ fields:
|
|
|
238
238
|
[when="HPM_COUNTER_EN[18] == false"]
|
|
239
239
|
This field is read-only zero because the counter is not enabled.
|
|
240
240
|
type(): |
|
|
241
|
-
return HPM_COUNTER_EN[18] ? CsrFieldType::
|
|
241
|
+
return HPM_COUNTER_EN[18] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
242
242
|
reset_value(): |
|
|
243
243
|
return HPM_COUNTER_EN[18] ? UNDEFINED_LEGAL : 0;
|
|
244
244
|
OF19:
|
|
@@ -251,7 +251,7 @@ fields:
|
|
|
251
251
|
[when="HPM_COUNTER_EN[19] == false"]
|
|
252
252
|
This field is read-only zero because the counter is not enabled.
|
|
253
253
|
type(): |
|
|
254
|
-
return HPM_COUNTER_EN[19] ? CsrFieldType::
|
|
254
|
+
return HPM_COUNTER_EN[19] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
255
255
|
reset_value(): |
|
|
256
256
|
return HPM_COUNTER_EN[19] ? UNDEFINED_LEGAL : 0;
|
|
257
257
|
OF20:
|
|
@@ -264,7 +264,7 @@ fields:
|
|
|
264
264
|
[when="HPM_COUNTER_EN[20] == false"]
|
|
265
265
|
This field is read-only zero because the counter is not enabled.
|
|
266
266
|
type(): |
|
|
267
|
-
return HPM_COUNTER_EN[20] ? CsrFieldType::
|
|
267
|
+
return HPM_COUNTER_EN[20] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
268
268
|
reset_value(): |
|
|
269
269
|
return HPM_COUNTER_EN[20] ? UNDEFINED_LEGAL : 0;
|
|
270
270
|
OF21:
|
|
@@ -277,7 +277,7 @@ fields:
|
|
|
277
277
|
[when="HPM_COUNTER_EN[21] == false"]
|
|
278
278
|
This field is read-only zero because the counter is not enabled.
|
|
279
279
|
type(): |
|
|
280
|
-
return HPM_COUNTER_EN[21] ? CsrFieldType::
|
|
280
|
+
return HPM_COUNTER_EN[21] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
281
281
|
reset_value(): |
|
|
282
282
|
return HPM_COUNTER_EN[21] ? UNDEFINED_LEGAL : 0;
|
|
283
283
|
OF22:
|
|
@@ -290,7 +290,7 @@ fields:
|
|
|
290
290
|
[when="HPM_COUNTER_EN[22] == false"]
|
|
291
291
|
This field is read-only zero because the counter is not enabled.
|
|
292
292
|
type(): |
|
|
293
|
-
return HPM_COUNTER_EN[22] ? CsrFieldType::
|
|
293
|
+
return HPM_COUNTER_EN[22] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
294
294
|
reset_value(): |
|
|
295
295
|
return HPM_COUNTER_EN[22] ? UNDEFINED_LEGAL : 0;
|
|
296
296
|
OF23:
|
|
@@ -303,7 +303,7 @@ fields:
|
|
|
303
303
|
[when="HPM_COUNTER_EN[23] == false"]
|
|
304
304
|
This field is read-only zero because the counter is not enabled.
|
|
305
305
|
type(): |
|
|
306
|
-
return HPM_COUNTER_EN[23] ? CsrFieldType::
|
|
306
|
+
return HPM_COUNTER_EN[23] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
307
307
|
reset_value(): |
|
|
308
308
|
return HPM_COUNTER_EN[23] ? UNDEFINED_LEGAL : 0;
|
|
309
309
|
OF24:
|
|
@@ -316,7 +316,7 @@ fields:
|
|
|
316
316
|
[when="HPM_COUNTER_EN[24] == false"]
|
|
317
317
|
This field is read-only zero because the counter is not enabled.
|
|
318
318
|
type(): |
|
|
319
|
-
return HPM_COUNTER_EN[24] ? CsrFieldType::
|
|
319
|
+
return HPM_COUNTER_EN[24] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
320
320
|
reset_value(): |
|
|
321
321
|
return HPM_COUNTER_EN[24] ? UNDEFINED_LEGAL : 0;
|
|
322
322
|
OF25:
|
|
@@ -329,7 +329,7 @@ fields:
|
|
|
329
329
|
[when="HPM_COUNTER_EN[25] == false"]
|
|
330
330
|
This field is read-only zero because the counter is not enabled.
|
|
331
331
|
type(): |
|
|
332
|
-
return HPM_COUNTER_EN[25] ? CsrFieldType::
|
|
332
|
+
return HPM_COUNTER_EN[25] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
333
333
|
reset_value(): |
|
|
334
334
|
return HPM_COUNTER_EN[25] ? UNDEFINED_LEGAL : 0;
|
|
335
335
|
OF26:
|
|
@@ -342,7 +342,7 @@ fields:
|
|
|
342
342
|
[when="HPM_COUNTER_EN[26] == false"]
|
|
343
343
|
This field is read-only zero because the counter is not enabled.
|
|
344
344
|
type(): |
|
|
345
|
-
return HPM_COUNTER_EN[26] ? CsrFieldType::
|
|
345
|
+
return HPM_COUNTER_EN[26] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
346
346
|
reset_value(): |
|
|
347
347
|
return HPM_COUNTER_EN[26] ? UNDEFINED_LEGAL : 0;
|
|
348
348
|
OF27:
|
|
@@ -355,7 +355,7 @@ fields:
|
|
|
355
355
|
[when="HPM_COUNTER_EN[27] == false"]
|
|
356
356
|
This field is read-only zero because the counter is not enabled.
|
|
357
357
|
type(): |
|
|
358
|
-
return HPM_COUNTER_EN[27] ? CsrFieldType::
|
|
358
|
+
return HPM_COUNTER_EN[27] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
359
359
|
reset_value(): |
|
|
360
360
|
return HPM_COUNTER_EN[27] ? UNDEFINED_LEGAL : 0;
|
|
361
361
|
OF28:
|
|
@@ -368,7 +368,7 @@ fields:
|
|
|
368
368
|
[when="HPM_COUNTER_EN[28] == false"]
|
|
369
369
|
This field is read-only zero because the counter is not enabled.
|
|
370
370
|
type(): |
|
|
371
|
-
return HPM_COUNTER_EN[28] ? CsrFieldType::
|
|
371
|
+
return HPM_COUNTER_EN[28] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
372
372
|
reset_value(): |
|
|
373
373
|
return HPM_COUNTER_EN[28] ? UNDEFINED_LEGAL : 0;
|
|
374
374
|
OF29:
|
|
@@ -381,7 +381,7 @@ fields:
|
|
|
381
381
|
[when="HPM_COUNTER_EN[29] == false"]
|
|
382
382
|
This field is read-only zero because the counter is not enabled.
|
|
383
383
|
type(): |
|
|
384
|
-
return HPM_COUNTER_EN[29] ? CsrFieldType::
|
|
384
|
+
return HPM_COUNTER_EN[29] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
385
385
|
reset_value(): |
|
|
386
386
|
return HPM_COUNTER_EN[29] ? UNDEFINED_LEGAL : 0;
|
|
387
387
|
OF30:
|
|
@@ -394,7 +394,7 @@ fields:
|
|
|
394
394
|
[when="HPM_COUNTER_EN[30] == false"]
|
|
395
395
|
This field is read-only zero because the counter is not enabled.
|
|
396
396
|
type(): |
|
|
397
|
-
return HPM_COUNTER_EN[30] ? CsrFieldType::
|
|
397
|
+
return HPM_COUNTER_EN[30] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
398
398
|
reset_value(): |
|
|
399
399
|
return HPM_COUNTER_EN[30] ? UNDEFINED_LEGAL : 0;
|
|
400
400
|
OF31:
|
|
@@ -407,7 +407,7 @@ fields:
|
|
|
407
407
|
[when="HPM_COUNTER_EN[31] == false"]
|
|
408
408
|
This field is read-only zero because the counter is not enabled.
|
|
409
409
|
type(): |
|
|
410
|
-
return HPM_COUNTER_EN[31] ? CsrFieldType::
|
|
410
|
+
return HPM_COUNTER_EN[31] ? CsrFieldType::ROH : CsrFieldType::RO;
|
|
411
411
|
reset_value(): |
|
|
412
412
|
return HPM_COUNTER_EN[31] ? UNDEFINED_LEGAL : 0;
|
|
413
413
|
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent10.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent10.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10
|
|
87
|
+
* `mhpmevent10.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent10.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.
|
|
90
|
+
* `mhpmevent10.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent10.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.
|
|
94
|
-
* `mhpmevent10.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.
|
|
93
|
+
* `mhpmevent10.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent10.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent10.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent11.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent11.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11
|
|
87
|
+
* `mhpmevent11.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent11.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.
|
|
90
|
+
* `mhpmevent11.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent11.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.
|
|
94
|
-
* `mhpmevent11.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.
|
|
93
|
+
* `mhpmevent11.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent11.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent11.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent12.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent12.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12
|
|
87
|
+
* `mhpmevent12.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent12.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.
|
|
90
|
+
* `mhpmevent12.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent12.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.
|
|
94
|
-
* `mhpmevent12.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.
|
|
93
|
+
* `mhpmevent12.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent12.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent12.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent13.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent13.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13
|
|
87
|
+
* `mhpmevent13.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent13.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.
|
|
90
|
+
* `mhpmevent13.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent13.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.
|
|
94
|
-
* `mhpmevent13.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.
|
|
93
|
+
* `mhpmevent13.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent13.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent13.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent14.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent14.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14
|
|
87
|
+
* `mhpmevent14.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent14.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.
|
|
90
|
+
* `mhpmevent14.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent14.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.
|
|
94
|
-
* `mhpmevent14.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.
|
|
93
|
+
* `mhpmevent14.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent14.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent14.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent15.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent15.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15
|
|
87
|
+
* `mhpmevent15.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent15.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.
|
|
90
|
+
* `mhpmevent15.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent15.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.
|
|
94
|
-
* `mhpmevent15.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.
|
|
93
|
+
* `mhpmevent15.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent15.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent15.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent16.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent16.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16
|
|
87
|
+
* `mhpmevent16.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent16.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.
|
|
90
|
+
* `mhpmevent16.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent16.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.
|
|
94
|
-
* `mhpmevent16.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.
|
|
93
|
+
* `mhpmevent16.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent16.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent16.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent17.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent17.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17
|
|
87
|
+
* `mhpmevent17.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent17.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.
|
|
90
|
+
* `mhpmevent17.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent17.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.
|
|
94
|
-
* `mhpmevent17.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.
|
|
93
|
+
* `mhpmevent17.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent17.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent17.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|
|
@@ -84,14 +84,14 @@ fields:
|
|
|
84
84
|
<%- if ext?(:Sscofpmf) -%>
|
|
85
85
|
* `mhpmevent18.MINH` is set and the current privilege level is M
|
|
86
86
|
<%- if ext?(:S) -%>
|
|
87
|
-
* `mhpmevent18.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18
|
|
87
|
+
* `mhpmevent18.SINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.SINH`<%- end -%> is set and the current privilege level is (H)S
|
|
88
88
|
<%- end -%>
|
|
89
89
|
<%- if ext?(:U) -%>
|
|
90
|
-
* `mhpmevent18.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.
|
|
90
|
+
* `mhpmevent18.UINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.UINH`<%- end -%> is set and the current privilege level is U
|
|
91
91
|
<%- end -%>
|
|
92
92
|
<%- if ext?(:H) -%>
|
|
93
|
-
* `mhpmevent18.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.
|
|
94
|
-
* `mhpmevent18.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.
|
|
93
|
+
* `mhpmevent18.VSINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.VSINH`<%- end -%> is set and the current privilege level is VS
|
|
94
|
+
* `mhpmevent18.VUINH` <%- if ext?(:Ssccfg) -%>or its alias `hpmevent18.VUINH`<%- end -%> is set and the current privilege level is VU
|
|
95
95
|
<%- end -%>
|
|
96
96
|
<%- end -%>
|
|
97
97
|
--
|