udb 0.1.16 → 0.1.17
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 +20 -0
- data/.data/cfgs/mc100-32-full-example.yaml +6 -0
- data/.data/cfgs/qc_iu.yaml +14 -0
- data/.data/cfgs/rv32-riscv-tests.yaml +9 -0
- data/.data/cfgs/rv32-vector.yaml +10 -1
- data/.data/cfgs/rv64-riscv-tests.yaml +9 -0
- data/.data/cfgs/rv64-vector.yaml +11 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.mva01s.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.mvsa01.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.pop.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.popret.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.popretz.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.push.yaml +2 -2
- data/.data/spec/custom/isa/qc_iu/inst/Xqccmp/qc.cm.pushfp.yaml +2 -2
- data/.data/spec/schemas/README.adoc +4 -1
- data/.data/spec/schemas/csr_schema.json +2 -2
- data/.data/spec/std/isa/csr/H/hgeie.yaml +38 -0
- data/.data/spec/std/isa/csr/H/hgeip.yaml +33 -0
- data/.data/spec/std/isa/csr/H/hideleg.yaml +120 -0
- data/.data/spec/std/isa/csr/H/hie.yaml +74 -0
- data/.data/spec/std/isa/csr/H/hip.yaml +88 -0
- data/.data/spec/std/isa/csr/H/hvip.yaml +46 -0
- data/.data/spec/std/isa/csr/H/vsie.yaml +86 -0
- data/.data/spec/std/isa/csr/H/vsip.yaml +98 -0
- data/.data/spec/std/isa/csr/H/vsscratch.yaml +29 -0
- data/.data/spec/std/isa/csr/I/pmpaddr0.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr1.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr10.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr11.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr12.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr13.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr14.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr15.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr16.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr17.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr18.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr19.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr2.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr20.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr21.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr22.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr23.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr24.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr25.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr26.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr27.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr28.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr29.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr3.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr30.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr31.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr32.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr33.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr34.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr35.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr36.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr37.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr38.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr39.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr4.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr40.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr41.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr42.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr43.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr44.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr45.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr46.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr47.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr48.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr49.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr5.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr50.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr51.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr52.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr53.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr54.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr55.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr56.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr57.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr58.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr59.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr6.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr60.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr61.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr62.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr63.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr7.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr8.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddr9.yaml +7 -7
- data/.data/spec/std/isa/csr/I/pmpaddrN.layout +7 -7
- data/.data/spec/std/isa/csr/Smcsrind/mireg.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/mireg2.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/mireg3.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/mireg4.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/mireg5.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/mireg6.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg2.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg3.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg4.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg5.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/sireg6.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg2.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg3.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg4.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg5.yaml +2 -2
- data/.data/spec/std/isa/csr/Smcsrind/vsireg6.yaml +2 -2
- data/.data/spec/std/isa/csr/Smctr/sctrctl.yaml +1 -1
- data/.data/spec/std/isa/csr/Smctr/sctrdepth.yaml +43 -0
- data/.data/spec/std/isa/csr/Smctr/sctrstatus.yaml +37 -0
- data/.data/spec/std/isa/csr/Smctr/vsctrctl.yaml +3 -1
- data/.data/spec/std/isa/csr/Sstc/stimecmp.yaml +42 -0
- data/.data/spec/std/isa/csr/Sstc/stimecmph.yaml +43 -0
- data/.data/spec/std/isa/csr/Sstc/vstimecmp.yaml +45 -0
- data/.data/spec/std/isa/csr/Sstc/vstimecmph.yaml +46 -0
- data/.data/spec/std/isa/csr/V/vcsr.yaml +1 -1
- data/.data/spec/std/isa/csr/V/vl.yaml +1 -1
- data/.data/spec/std/isa/csr/V/vlenb.yaml +1 -1
- data/.data/spec/std/isa/csr/V/vstart.yaml +1 -1
- data/.data/spec/std/isa/csr/V/vtype.yaml +20 -1
- data/.data/spec/std/isa/csr/V/vxrm.yaml +1 -1
- data/.data/spec/std/isa/csr/V/vxsat.yaml +1 -1
- data/.data/spec/std/isa/csr/Zicntr/mcountinhibit.layout +1 -15
- data/.data/spec/std/isa/csr/Zicntr/mcountinhibit.yaml +29 -267
- data/.data/spec/std/isa/csr/mideleg.yaml +57 -9
- data/.data/spec/std/isa/csr/mie.yaml +18 -9
- data/.data/spec/std/isa/csr/mip.yaml +21 -10
- data/.data/spec/std/isa/csr/misa.yaml +11 -7
- data/.data/spec/std/isa/csr/mstatus.yaml +2 -2
- data/.data/spec/std/isa/csr/schema.adoc +10 -4
- data/.data/spec/std/isa/csr/senvcfg.yaml +6 -12
- data/.data/spec/std/isa/csr/sstateen0.yaml +1 -1
- data/.data/spec/std/isa/csr/sstateen1.yaml +2 -3
- data/.data/spec/std/isa/csr/sstateen2.yaml +2 -3
- data/.data/spec/std/isa/csr/sstateen3.yaml +2 -3
- data/.data/spec/std/isa/csr/tcontrol.yaml +37 -0
- data/.data/spec/std/isa/csr/tinfo.yaml +44 -0
- data/.data/spec/std/isa/ext/Smctr.yaml +1 -1
- data/.data/spec/std/isa/ext/Ssctr.yaml +1 -1
- data/.data/spec/std/isa/ext/Ssstrict.yaml +2 -2
- data/.data/spec/std/isa/ext/Sv32.yaml +2 -2
- data/.data/spec/std/isa/ext/Svpbmt.yaml +2 -2
- data/.data/spec/std/isa/ext/Zaamo.yaml +1 -1
- data/.data/spec/std/isa/ext/Zbc.yaml +4 -0
- data/.data/spec/std/isa/ext/Zvfbfa.yaml +24 -0
- data/.data/spec/std/isa/ext/Zvfofp4min.yaml +21 -0
- data/.data/spec/std/isa/ext/Zvfofp8min.yaml +20 -0
- data/.data/spec/std/isa/inst/B/andn.yaml +0 -4
- data/.data/spec/std/isa/inst/B/orn.yaml +0 -4
- data/.data/spec/std/isa/inst/B/rev8.yaml +0 -4
- data/.data/spec/std/isa/inst/B/rol.yaml +0 -4
- data/.data/spec/std/isa/inst/B/rolw.yaml +0 -4
- data/.data/spec/std/isa/inst/B/ror.yaml +0 -4
- data/.data/spec/std/isa/inst/B/rori.yaml +0 -4
- data/.data/spec/std/isa/inst/B/roriw.yaml +0 -4
- data/.data/spec/std/isa/inst/B/rorw.yaml +0 -4
- data/.data/spec/std/isa/inst/B/xnor.yaml +0 -4
- data/.data/spec/std/isa/inst/C/c.addi.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.addi16sp.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.addi4spn.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.addiw.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.beqz.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.bnez.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.ebreak.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.j.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.jal.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.jalr.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.jr.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.ld.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.ldsp.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.li.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.lui.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.lw.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.lwsp.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.mv.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.nop.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.sd.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.sdsp.yaml +5 -5
- data/.data/spec/std/isa/inst/C/c.sw.yaml +2 -2
- data/.data/spec/std/isa/inst/C/c.swsp.yaml +2 -2
- data/.data/spec/std/isa/inst/I/ld.yaml +9 -4
- data/.data/spec/std/isa/inst/I/sd.yaml +9 -4
- data/.data/spec/std/isa/inst/I/wfi.yaml +1 -1
- data/.data/spec/std/isa/inst/M/div.yaml +2 -2
- data/.data/spec/std/isa/inst/M/divu.yaml +2 -2
- data/.data/spec/std/isa/inst/M/divuw.yaml +2 -2
- data/.data/spec/std/isa/inst/M/divw.yaml +2 -2
- data/.data/spec/std/isa/inst/M/mul.yaml +0 -4
- data/.data/spec/std/isa/inst/M/mulh.yaml +0 -4
- data/.data/spec/std/isa/inst/M/mulhsu.yaml +0 -4
- data/.data/spec/std/isa/inst/M/mulhu.yaml +0 -4
- data/.data/spec/std/isa/inst/M/mulw.yaml +0 -4
- data/.data/spec/std/isa/inst/M/rem.yaml +2 -2
- data/.data/spec/std/isa/inst/M/remu.yaml +2 -2
- data/.data/spec/std/isa/inst/M/remuw.yaml +2 -2
- data/.data/spec/std/isa/inst/M/remw.yaml +2 -2
- data/.data/spec/std/isa/inst/V/vfadd.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfadd.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfclass.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmacc.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmacc.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmadd.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmadd.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmax.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmax.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmerge.vfm.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmin.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmin.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmsac.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmsac.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmsub.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmsub.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmul.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmul.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmv.f.s.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmv.s.f.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfmv.v.f.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.f.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.rod.f.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.rtz.x.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.rtz.xu.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.x.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfncvt.xu.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmacc.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmacc.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmadd.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmadd.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmsac.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmsac.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmsub.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfnmsub.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfrec7.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfrsqrt7.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfrsub.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnj.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnj.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnjn.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnjn.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnjx.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsgnjx.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfslide1down.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfslide1up.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsub.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfsub.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwadd.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwadd.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwadd.wf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwadd.wv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwcvt.f.f.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwcvt.f.x.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwcvt.f.xu.v.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmacc.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmacc.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmsac.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmsac.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmul.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwmul.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwnmacc.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwnmacc.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwnmsac.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwnmsac.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwsub.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwsub.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwsub.wf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vfwsub.wv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfeq.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfeq.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfge.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfgt.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfle.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfle.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmflt.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmflt.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfne.vf.yaml +3 -1
- data/.data/spec/std/isa/inst/V/vmfne.vv.yaml +3 -1
- data/.data/spec/std/isa/inst/Zaamo/amoadd.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoadd.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoadd.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoadd.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoadd.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoadd.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoadd.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoadd.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoadd.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoand.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoand.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoand.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoand.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoand.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoand.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoand.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoand.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoand.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomax.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomax.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomax.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomax.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomax.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomax.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomax.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomax.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomax.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomaxu.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomin.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomin.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomin.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomin.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomin.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amomin.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomin.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomin.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amomin.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amominu.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amominu.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amominu.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amominu.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amominu.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amominu.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amominu.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amominu.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amominu.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoor.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoor.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoor.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoor.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoor.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoor.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoor.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoor.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoor.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoswap.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoswap.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoswap.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoswap.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoswap.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoswap.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoswap.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoswap.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoswap.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoxor.SIZE.AQRL.layout +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoxor.d.aq.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoxor.d.aqrl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoxor.d.rl.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoxor.d.yaml +0 -4
- data/.data/spec/std/isa/inst/Zaamo/amoxor.w.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoxor.w.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoxor.w.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zaamo/amoxor.w.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoadd.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoand.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomax.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomaxu.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amomin.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amominu.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoor.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoswap.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.b.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.b.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.b.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.b.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.h.aq.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.h.aqrl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.h.rl.yaml +1 -5
- data/.data/spec/std/isa/inst/Zabha/amoxor.h.yaml +1 -5
- data/.data/spec/std/isa/inst/Zalrsc/lr.SIZE.AQRL.layout +1 -11
- data/.data/spec/std/isa/inst/Zalrsc/lr.d.aq.yaml +0 -6
- data/.data/spec/std/isa/inst/Zalrsc/lr.d.aqrl.yaml +0 -6
- data/.data/spec/std/isa/inst/Zalrsc/lr.d.rl.yaml +0 -6
- data/.data/spec/std/isa/inst/Zalrsc/lr.d.yaml +0 -6
- data/.data/spec/std/isa/inst/Zalrsc/lr.w.aq.yaml +1 -11
- data/.data/spec/std/isa/inst/Zalrsc/lr.w.aqrl.yaml +1 -11
- data/.data/spec/std/isa/inst/Zalrsc/lr.w.rl.yaml +1 -11
- data/.data/spec/std/isa/inst/Zalrsc/lr.w.yaml +1 -11
- data/.data/spec/std/isa/inst/Zalrsc/sc.SIZE.AQRL.layout +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.d.aq.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.d.aqrl.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.d.rl.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.d.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.w.aq.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.w.aqrl.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.w.rl.yaml +4 -10
- data/.data/spec/std/isa/inst/Zalrsc/sc.w.yaml +4 -10
- data/.data/spec/std/isa/inst/Zba/add.uw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh1add.uw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh1add.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh2add.uw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh2add.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh3add.uw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/sh3add.yaml +0 -4
- data/.data/spec/std/isa/inst/Zba/slli.uw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/clz.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/clzw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/cpop.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/cpopw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/ctz.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/ctzw.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/max.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/maxu.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/min.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/minu.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/orc.b.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/sext.b.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/sext.h.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbb/zext.h.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbc/clmulr.yaml +0 -4
- data/.data/spec/std/isa/inst/{B → Zbkc}/clmul.yaml +1 -7
- data/.data/spec/std/isa/inst/{B → Zbkc}/clmulh.yaml +1 -7
- data/.data/spec/std/isa/inst/Zbs/bclr.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/bclri.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/bext.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/bexti.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/binv.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/binvi.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/bset.yaml +0 -4
- data/.data/spec/std/isa/inst/Zbs/bseti.yaml +0 -4
- data/.data/spec/std/isa/inst/Zcb/c.lbu.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.lh.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.lhu.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.mul.yaml +2 -6
- data/.data/spec/std/isa/inst/Zcb/c.not.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.sb.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.sext.b.yaml +2 -6
- data/.data/spec/std/isa/inst/Zcb/c.sext.h.yaml +2 -6
- data/.data/spec/std/isa/inst/Zcb/c.sh.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.zext.b.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcb/c.zext.h.yaml +2 -6
- data/.data/spec/std/isa/inst/Zcb/c.zext.w.yaml +2 -6
- data/.data/spec/std/isa/inst/Zcd/c.fld.yaml +3 -3
- data/.data/spec/std/isa/inst/Zcd/c.fldsp.yaml +4 -4
- data/.data/spec/std/isa/inst/Zcd/c.fsd.yaml +3 -3
- data/.data/spec/std/isa/inst/Zcd/c.fsdsp.yaml +4 -4
- data/.data/spec/std/isa/inst/Zcf/c.flw.yaml +3 -3
- data/.data/spec/std/isa/inst/Zcf/c.flwsp.yaml +4 -4
- data/.data/spec/std/isa/inst/Zcf/c.fsw.yaml +3 -3
- data/.data/spec/std/isa/inst/Zcf/c.fswsp.yaml +4 -4
- data/.data/spec/std/isa/inst/Zcmp/cm.mva01s.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcmp/cm.mvsa01.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcmp/cm.pop.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcmp/cm.popret.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcmp/cm.popretz.yaml +2 -2
- data/.data/spec/std/isa/inst/Zcmp/cm.push.yaml +2 -2
- data/.data/spec/std/isa/inst/Zicbom/cbo.clean.yaml +2 -2
- data/.data/spec/std/isa/inst/Zicbom/cbo.flush.yaml +2 -2
- data/.data/spec/std/isa/inst/Zicbom/cbo.inval.yaml +2 -2
- data/.data/spec/std/isa/inst/Zicboz/cbo.zero.yaml +2 -2
- data/.data/spec/std/isa/inst/Zvfbfmin/vfncvtbf16.f.f.w.yaml +3 -1
- data/.data/spec/std/isa/inst/Zvfbfmin/vfwcvtbf16.f.f.v.yaml +3 -1
- data/.data/spec/std/isa/inst/Zvfofp4min/vfext.vf2.yaml +35 -0
- data/.data/spec/std/isa/inst/Zvfofp8min/vfncvt.f.f.q.yaml +31 -0
- data/.data/spec/std/isa/inst/Zvfofp8min/vfncvt.sat.f.f.q.yaml +32 -0
- data/.data/spec/std/isa/inst/Zvfofp8min/vfncvtbf16.sat.f.f.w.yaml +32 -0
- data/.data/spec/std/isa/isa/builtin_functions.idl +3 -1
- data/.data/spec/std/isa/isa/util.idl +1 -0
- data/.data/spec/std/isa/param/COUNTINHIBIT_EN.yaml +2 -10
- data/.data/spec/std/isa/param/HCOUNTENABLE_EN.yaml +2 -5
- data/.data/spec/std/isa/param/HPM_COUNTER10_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER11_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER12_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER13_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER14_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER15_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER16_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER17_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER18_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER19_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER20_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER21_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER22_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER23_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER24_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER25_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER26_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER27_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER28_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER29_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER30_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER31_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER3_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER4_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER5_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER6_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER7_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER8_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTER9_WIDTH.yaml +29 -0
- data/.data/spec/std/isa/param/HPM_COUNTERN_WIDTH.layout +27 -0
- data/.data/spec/std/isa/param/HW_MSTATUS_FS_DIRTY_UPDATE.yaml +2 -4
- data/.data/spec/std/isa/param/HW_MSTATUS_VS_DIRTY_UPDATE.yaml +2 -4
- data/.data/spec/std/isa/param/LRSC_FAIL_ON_NON_EXACT_LRSC.yaml +1 -1
- data/.data/spec/std/isa/param/LRSC_FAIL_ON_VA_SYNONYM.yaml +1 -1
- data/.data/spec/std/isa/param/LRSC_MISALIGNED_BEHAVIOR.yaml +4 -4
- data/.data/spec/std/isa/param/LRSC_RESERVATION_STRATEGY.yaml +1 -1
- data/.data/spec/std/isa/param/MCOUNTENABLE_EN.yaml +2 -5
- data/.data/spec/std/isa/param/MEI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/MSI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/MSTATUS_FS_LEGAL_VALUES.yaml +8 -15
- data/.data/spec/std/isa/param/MSTATUS_VS_LEGAL_VALUES.yaml +7 -15
- data/.data/spec/std/isa/param/MTI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/MTVAL_WIDTH.yaml +17 -5
- data/.data/spec/std/isa/param/MUTABLE_MISA_A.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_B.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_C.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_D.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_F.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_M.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_Q.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_U.yaml +1 -1
- data/.data/spec/std/isa/param/MUTABLE_MISA_V.yaml +1 -1
- data/.data/spec/std/isa/param/{PMLEN.yaml → NON_STANDARD_EXTENSION_IMPLEMENTED.yaml} +6 -9
- data/.data/spec/std/isa/param/NUM_EXTERNAL_GUEST_INTERRUPTS.yaml +1 -1
- data/.data/spec/std/isa/param/NUM_PMP_ENTRIES.yaml +1 -1
- data/.data/spec/std/isa/param/REPORT_CAUSE_IN_MTVAL_ON_LANDING_PAD_SOFTWARE_CHECK.yaml +1 -1
- data/.data/spec/std/isa/param/REPORT_CAUSE_IN_STVAL_ON_LANDING_PAD_SOFTWARE_CHECK.yaml +1 -1
- data/.data/spec/std/isa/param/REPORT_CAUSE_IN_VSTVAL_ON_LANDING_PAD_SOFTWARE_CHECK.yaml +1 -1
- data/.data/spec/std/isa/param/SCOUNTENABLE_EN.yaml +2 -6
- data/.data/spec/std/isa/param/SCTRDEPTH_DEPTH_LEGAL_VALUES.yaml +27 -0
- data/.data/spec/std/isa/param/SEI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/SSI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/STI_INTR_IMPL.yaml +33 -0
- data/.data/spec/std/isa/param/STVAL_WIDTH.yaml +81 -0
- data/.data/spec/std/isa/param/SUPPORTED_PMLEN_SMMPM.yaml +40 -0
- data/.data/spec/std/isa/param/SUPPORTED_PMLEN_SMNPM.yaml +42 -0
- data/.data/spec/std/isa/param/SUPPORTED_PMLEN_SSNPM.yaml +42 -0
- data/.data/spec/std/isa/param/TRAP_ON_ECALL_FROM_S.yaml +1 -1
- data/.data/spec/std/isa/param/TRAP_ON_ECALL_FROM_U.yaml +1 -1
- data/.data/spec/std/isa/param/TRAP_ON_ECALL_FROM_VS.yaml +1 -1
- data/.data/spec/std/isa/param/TRAP_ON_SFENCE_VMA_WHEN_SATP_MODE_IS_READ_ONLY.yaml +1 -1
- data/.data/spec/std/isa/param/VSEI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/VSSI_INTR_IMPL.yaml +28 -0
- data/.data/spec/std/isa/param/VSTI_INTR_IMPL.yaml +33 -0
- data/.data/spec/std/isa/param/WFI_FINITE.yaml +20 -0
- data/.data/spec/std/isa/param/WFI_U_MODE.yaml +20 -0
- data/lib/udb/Z3_VERSION +1 -1
- data/lib/udb/log.rb +16 -0
- data/lib/udb/obj/csr.rb +38 -45
- data/lib/udb/obj/database_obj.rb +1 -1
- data/lib/udb/obj/exception_code.rb +3 -3
- data/lib/udb/version.rb +1 -1
- metadata +79 -10
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER26_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 26
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 26
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter26`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[26]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER27_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 27
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 27
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter27`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[27]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER28_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 28
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 28
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter28`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[28]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER29_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 29
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 29
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter29`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[29]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER30_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 30
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 30
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter30`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[30]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER31_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 31
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 31
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter31`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[31]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER3_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 3
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 3
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter3`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[3]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER4_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 4
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 4
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter4`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[4]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER5_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 5
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 5
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter5`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[5]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER6_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 6
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 6
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter6`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[6]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER7_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 7
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 7
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter7`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[7]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER8_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 8
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 8
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter8`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[8]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
|
|
3
|
+
# WARNING: This file is auto-generated from spec/std/isa/param/HPM_COUNTERN_WIDTH.layout
|
|
4
|
+
|
|
5
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
6
|
+
|
|
7
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
8
|
+
|
|
9
|
+
$schema: param_schema.json#
|
|
10
|
+
kind: parameter
|
|
11
|
+
name: HPM_COUNTER9_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 9
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 9
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter9`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[9]` is `true`.
|
|
25
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
26
|
+
schema:
|
|
27
|
+
type: integer
|
|
28
|
+
minimum: 0
|
|
29
|
+
maximum: 64
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
|
|
4
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
5
|
+
<%- raise "'hpm_num' must be defined" if hpm_num.nil? -%>
|
|
6
|
+
|
|
7
|
+
$schema: param_schema.json#
|
|
8
|
+
kind: parameter
|
|
9
|
+
name: <%= "HPM_COUNTER#{hpm_num}_WIDTH" %>
|
|
10
|
+
long_name: Width of HPM counter <%= hpm_num %>
|
|
11
|
+
definedBy:
|
|
12
|
+
allOf:
|
|
13
|
+
- extension:
|
|
14
|
+
name: Sm
|
|
15
|
+
- param:
|
|
16
|
+
name: HPM_COUNTER_EN
|
|
17
|
+
index: <%= hpm_num %>
|
|
18
|
+
equal: true
|
|
19
|
+
description: |
|
|
20
|
+
The number of bits of precision implemented by `mhpmcounter<%= hpm_num %>`.
|
|
21
|
+
|
|
22
|
+
This parameter exists only when `HPM_COUNTER_EN[<%= hpm_num %>]` is `true`.
|
|
23
|
+
The privileged specification allows an HPM counter to have up to 64 bits of precision.
|
|
24
|
+
schema:
|
|
25
|
+
type: integer
|
|
26
|
+
minimum: 0
|
|
27
|
+
maximum: 64
|
|
@@ -7,20 +7,18 @@ $schema: param_schema.json#
|
|
|
7
7
|
kind: parameter
|
|
8
8
|
name: HW_MSTATUS_FS_DIRTY_UPDATE
|
|
9
9
|
description: |
|
|
10
|
-
Indicates
|
|
10
|
+
Indicates when hardware will write to `mstatus.FS`
|
|
11
11
|
|
|
12
12
|
Values are:
|
|
13
13
|
[separator="!"]
|
|
14
14
|
!===
|
|
15
|
-
h! never ! Hardware never writes `mstatus.FS`
|
|
16
15
|
h! precise ! Hardware writes `mstatus.FS` to the Dirty (3) state precisely when F registers are modified
|
|
17
16
|
h! imprecise ! Hardware writes `mstatus.FS` imprecisely. This will result in a call to unpredictable() on any attempt to read `mstatus` or write FP state.
|
|
18
17
|
!===
|
|
19
|
-
long_name:
|
|
18
|
+
long_name: Hardware mstatus.FS Dirty update
|
|
20
19
|
schema:
|
|
21
20
|
type: string
|
|
22
21
|
enum:
|
|
23
|
-
- never
|
|
24
22
|
- precise
|
|
25
23
|
- imprecise
|
|
26
24
|
definedBy:
|
|
@@ -7,20 +7,18 @@ $schema: param_schema.json#
|
|
|
7
7
|
kind: parameter
|
|
8
8
|
name: HW_MSTATUS_VS_DIRTY_UPDATE
|
|
9
9
|
description: |
|
|
10
|
-
Indicates
|
|
10
|
+
Indicates when hardware will write to `mstatus.VS`
|
|
11
11
|
|
|
12
12
|
Values are:
|
|
13
13
|
[separator="!"]
|
|
14
14
|
!===
|
|
15
|
-
h! never ! Hardware never writes `mstatus.VS`
|
|
16
15
|
h! precise ! Hardware writes `mstatus.VS` to the Dirty (3) state precisely when V registers are modified
|
|
17
16
|
h! imprecise ! Hardware writes `mstatus.VS` imprecisely. This will result in a call to unpredictable() on any attempt to read `mstatus` or write vector state.
|
|
18
17
|
!===
|
|
19
|
-
long_name:
|
|
18
|
+
long_name: Hardware mstatus.VS Dirty update
|
|
20
19
|
schema:
|
|
21
20
|
type: string
|
|
22
21
|
enum:
|
|
23
|
-
- never
|
|
24
22
|
- precise
|
|
25
23
|
- imprecise
|
|
26
24
|
definedBy:
|
|
@@ -10,7 +10,7 @@ description: |
|
|
|
10
10
|
Whether or not a Store Conditional fails if its physical address and size do not
|
|
11
11
|
exactly match the physical address and size of the last Load Reserved in program order
|
|
12
12
|
(independent of whether or not the SC is in the current reservation set)
|
|
13
|
-
long_name:
|
|
13
|
+
long_name: "Store Conditional fails on inexact match of address and size of Load Reserved"
|
|
14
14
|
schema:
|
|
15
15
|
type: boolean
|
|
16
16
|
definedBy:
|
|
@@ -9,7 +9,7 @@ name: LRSC_FAIL_ON_VA_SYNONYM
|
|
|
9
9
|
description: |
|
|
10
10
|
Whether or not an `sc.l`/`sc.d` will fail if its VA does not match the VA of the prior
|
|
11
11
|
`lr.l`/`lr.d`, even if the physical address of the SC and LR are the same
|
|
12
|
-
long_name:
|
|
12
|
+
long_name: "Store Conditional fails on virtual address mismatch of Load Reserved"
|
|
13
13
|
schema:
|
|
14
14
|
type: boolean
|
|
15
15
|
definedBy:
|
|
@@ -9,10 +9,10 @@ name: LRSC_MISALIGNED_BEHAVIOR
|
|
|
9
9
|
description: |
|
|
10
10
|
What to do when an LR/SC address is misaligned and MISALIGNED_AMO == false.
|
|
11
11
|
|
|
12
|
-
* 'always raise misaligned exception': self-
|
|
13
|
-
* 'always raise access fault': self-
|
|
14
|
-
* 'custom': Custom behavior; misaligned LR/SC may sometimes raise a misaligned exception and sometimes raise
|
|
15
|
-
long_name:
|
|
12
|
+
* 'always raise misaligned exception': self-explanatory
|
|
13
|
+
* 'always raise access fault': self-explanatory
|
|
14
|
+
* 'custom': Custom behavior; misaligned LR/SC may sometimes raise a misaligned exception and sometimes raise an access fault. Will lead to an 'unpredictable' call on any misaligned LR/SC access
|
|
15
|
+
long_name: "Misaligned LR/SC behavior"
|
|
16
16
|
schema:
|
|
17
17
|
type: string
|
|
18
18
|
enum:
|
|
@@ -13,7 +13,7 @@ description: |
|
|
|
13
13
|
* "reserve naturally-aligned 128-byte region": Always reserve the 128-byte block containing the LR/SC address
|
|
14
14
|
* "reserve exactly enough to cover the access": Always reserve exactly the LR/SC access, and no more
|
|
15
15
|
* "custom": Custom behavior, leading to an 'unpredictable' call on any LR/SC
|
|
16
|
-
long_name:
|
|
16
|
+
long_name: "LR/SC reservation set strategy"
|
|
17
17
|
schema:
|
|
18
18
|
type: string
|
|
19
19
|
enum:
|
|
@@ -9,9 +9,8 @@ name: MCOUNTENABLE_EN
|
|
|
9
9
|
description: |
|
|
10
10
|
Indicates which counters can be delegated via `mcounteren`.
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
MCOUNTENABLE_EN[3] to true.
|
|
12
|
+
`MCOUNTENABLE_EN[n]` controls whether `mcounteren.HPM<n>` is writable. It does not
|
|
13
|
+
depend on whether `hpmcounter<n>`/`mhpmcounter<n>` is read-only zero.
|
|
15
14
|
|
|
16
15
|
MCOUNTENABLE_EN[0:2] must all be false if `Zicntr` is not implemented.
|
|
17
16
|
MCOUNTENABLE_EN[3:31] must all be false if `Zihpm` is not implemented.
|
|
@@ -32,9 +31,7 @@ requirements:
|
|
|
32
31
|
}
|
|
33
32
|
for (U32 i=3; i < 32; i++) {
|
|
34
33
|
!implemented?(ExtensionName::Zihpm) -> !MCOUNTENABLE_EN[i];
|
|
35
|
-
MCOUNTENABLE_EN[i] -> HPM_COUNTER_EN[i];
|
|
36
34
|
}
|
|
37
35
|
reason: |
|
|
38
36
|
Counters 0-2 are defined by Zicntr
|
|
39
37
|
Counters 3..31 are defined by Zihpm
|
|
40
|
-
When mhpmcounter[i] is not implemented, it cannot be enabled.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Copyright (c) David_Harris@hmc.edu 13 July 2026
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
|
|
4
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
5
|
+
|
|
6
|
+
$schema: param_schema.json#
|
|
7
|
+
kind: parameter
|
|
8
|
+
name: MEI_INTR_IMPL
|
|
9
|
+
description: |
|
|
10
|
+
Whether or not machine-level external interrupts are implemented.
|
|
11
|
+
|
|
12
|
+
Possible values:
|
|
13
|
+
|
|
14
|
+
true::
|
|
15
|
+
Machine-level external interrupts are implemented.
|
|
16
|
+
`mie.MEIE` and `mideleg.MEI` are writable.
|
|
17
|
+
|
|
18
|
+
false::
|
|
19
|
+
Machine-level external interrupts are not implemented.
|
|
20
|
+
`mie.MEIE` and `mideleg.MEI` are read-only zero.
|
|
21
|
+
long_name: Machine-level external interrupts are implemented
|
|
22
|
+
schema:
|
|
23
|
+
type: boolean
|
|
24
|
+
definedBy:
|
|
25
|
+
extension:
|
|
26
|
+
allOf:
|
|
27
|
+
- name: Zicsr
|
|
28
|
+
- name: Sm
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Copyright (c) David_Harris@hmc.edu 13 July 2026
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
|
|
4
|
+
# yaml-language-server: $schema=../../../schemas/param_schema.json
|
|
5
|
+
|
|
6
|
+
$schema: param_schema.json#
|
|
7
|
+
kind: parameter
|
|
8
|
+
name: MSI_INTR_IMPL
|
|
9
|
+
description: |
|
|
10
|
+
Whether or not machine-level software interrupts are implemented.
|
|
11
|
+
|
|
12
|
+
Possible values:
|
|
13
|
+
|
|
14
|
+
true::
|
|
15
|
+
Machine-level software interrupts are implemented.
|
|
16
|
+
`mie.MSIE` and `mideleg.MSI` are writable.
|
|
17
|
+
|
|
18
|
+
false::
|
|
19
|
+
Machine-level software interrupts are not implemented.
|
|
20
|
+
`mie.MSIE` and `mideleg.MSI` are read-only zero.
|
|
21
|
+
long_name: Machine-level software interrupts are implemented
|
|
22
|
+
schema:
|
|
23
|
+
type: boolean
|
|
24
|
+
definedBy:
|
|
25
|
+
extension:
|
|
26
|
+
allOf:
|
|
27
|
+
- name: Zicsr
|
|
28
|
+
- name: Sm
|
|
@@ -6,32 +6,25 @@
|
|
|
6
6
|
$schema: param_schema.json#
|
|
7
7
|
kind: parameter
|
|
8
8
|
name: MSTATUS_FS_LEGAL_VALUES
|
|
9
|
-
description:
|
|
10
|
-
|
|
11
|
-
"
|
|
12
|
-
long_name: TODO
|
|
9
|
+
description: The set of values that mstatus.FS supports.
|
|
10
|
+
long_name: mstatus.FS legal values
|
|
13
11
|
schema:
|
|
14
12
|
type: array
|
|
15
13
|
items:
|
|
16
14
|
type: integer
|
|
17
15
|
enum:
|
|
18
|
-
- 0
|
|
19
|
-
- 1
|
|
20
|
-
- 2
|
|
21
|
-
- 3
|
|
16
|
+
- 0 # Off
|
|
17
|
+
- 1 # Initial
|
|
18
|
+
- 2 # Clean
|
|
19
|
+
- 3 # Dirty
|
|
22
20
|
maxItems: 4
|
|
23
21
|
minItems: 1
|
|
24
22
|
uniqueItems: true
|
|
25
23
|
requirements:
|
|
26
24
|
idl(): |
|
|
27
|
-
implemented?(ExtensionName::F)
|
|
28
|
-
(HW_MSTATUS_FS_DIRTY_UPDATE == "precise" ||
|
|
29
|
-
HW_MSTATUS_FS_DIRTY_UPDATE == "imprecise")
|
|
30
|
-
->
|
|
25
|
+
implemented?(ExtensionName::F) ->
|
|
31
26
|
$array_includes?(MSTATUS_FS_LEGAL_VALUES, 3);
|
|
32
|
-
reason:
|
|
33
|
-
If there is a hardware update to mstatus.FS, then the Dirty state must be
|
|
34
|
-
supported
|
|
27
|
+
reason: If F extension is implemented, then the Dirty state must be supported
|
|
35
28
|
definedBy:
|
|
36
29
|
extension:
|
|
37
30
|
allOf:
|