udb 0.1.15 → 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 +21 -0
- data/.data/cfgs/mc100-32-full-example.yaml +7 -0
- 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 +15 -0
- data/.data/cfgs/rv32-riscv-tests.yaml +10 -0
- data/.data/cfgs/rv32-vector.yaml +11 -1
- data/.data/cfgs/rv64-riscv-tests.yaml +10 -0
- data/.data/cfgs/rv64-vector.yaml +12 -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/henvcfg.yaml +1 -1
- 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/htimedeltah.yaml +1 -1
- 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 +4 -2
- 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/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/instreth.yaml +1 -3
- 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/minstreth.yaml +1 -1
- 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 +3 -3
- data/.data/spec/std/isa/csr/mstatush.yaml +1 -1
- data/.data/spec/std/isa/csr/schema.adoc +10 -4
- data/.data/spec/std/isa/csr/senvcfg.yaml +7 -13
- data/.data/spec/std/isa/csr/sepc.yaml +4 -3
- data/.data/spec/std/isa/csr/sip.yaml +1 -1
- data/.data/spec/std/isa/csr/sscratch.yaml +3 -2
- 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/stval.yaml +3 -2
- data/.data/spec/std/isa/csr/stvec.yaml +5 -4
- data/.data/spec/std/isa/csr/tcontrol.yaml +37 -0
- 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/tinfo.yaml +44 -0
- data/.data/spec/std/isa/csr/vsepc.yaml +6 -5
- data/.data/spec/std/isa/csr/vstvec.yaml +5 -4
- data/.data/spec/std/isa/ext/M.yaml +4 -0
- data/.data/spec/std/isa/ext/Shgatpa.yaml +1 -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/Zibi.yaml +29 -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 +1 -5
- data/.data/spec/std/isa/inst/B/rorw.yaml +1 -5
- 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/F/fmv.w.x.yaml +3 -0
- data/.data/spec/std/isa/inst/F/fmv.x.w.yaml +3 -0
- 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 +1 -7
- data/.data/spec/std/isa/inst/M/mulh.yaml +1 -7
- data/.data/spec/std/isa/inst/M/mulhsu.yaml +1 -7
- data/.data/spec/std/isa/inst/M/mulhu.yaml +1 -7
- data/.data/spec/std/isa/inst/M/mulw.yaml +1 -7
- 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 +5 -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/{Q → Zfa}/fltq.q.yaml +2 -2
- 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.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 +3 -3
- data/.data/spec/std/isa/inst/Zicboz/cbo.zero.yaml +2 -2
- 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/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/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/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/builtin_functions.idl +3 -1
- data/.data/spec/std/isa/isa/globals.isa +1 -1
- data/.data/spec/std/isa/isa/util.idl +4 -3
- data/.data/spec/std/isa/param/COUNTINHIBIT_EN.yaml +3 -2
- data/.data/spec/std/isa/param/HCONTEXT_AVAILABLE.yaml +1 -1
- 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_H.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_S.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/config.rb +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 +122 -52
- 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/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/{Q → Zfa}/fleq.q.yaml +0 -0
- /data/.data/spec/std/isa/inst/{F → Zfa}/fleq.s.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/{Q → Zfa}/fli.q.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/{F → Zfa}/fltq.s.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/{Q → Zfa}/fmaxm.q.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/{Q → Zfa}/fminm.q.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/{Q → Zfa}/fmvp.q.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
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
# yaml-language-server: $schema=../../../../schemas/inst_schema.json
|
|
4
|
+
$schema: "inst_schema.json#"
|
|
5
|
+
kind: instruction
|
|
6
|
+
name: vfncvt.f.f.q
|
|
7
|
+
long_name: Vector floating-point FP32 conversion to OFP8
|
|
8
|
+
description: |
|
|
9
|
+
Converts FP32 floating-point elements in vector register vs2 to OFP8
|
|
10
|
+
elements and stores the results in vector register vd according to mask vm.
|
|
11
|
+
Results are rounded using the dynamic floating-point rounding mode.
|
|
12
|
+
definedBy:
|
|
13
|
+
extension:
|
|
14
|
+
name: Zvfofp8min
|
|
15
|
+
assembly: vd, vs2, vm
|
|
16
|
+
encoding:
|
|
17
|
+
match: 010010------11001001-----1010111
|
|
18
|
+
variables:
|
|
19
|
+
- name: vm
|
|
20
|
+
location: 25-25
|
|
21
|
+
- name: vs2
|
|
22
|
+
location: 24-20
|
|
23
|
+
- name: vd
|
|
24
|
+
location: 11-7
|
|
25
|
+
access:
|
|
26
|
+
s: always
|
|
27
|
+
u: always
|
|
28
|
+
vs: always
|
|
29
|
+
vu: always
|
|
30
|
+
data_independent_timing: false
|
|
31
|
+
operation(): |
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
# yaml-language-server: $schema=../../../../schemas/inst_schema.json
|
|
4
|
+
$schema: "inst_schema.json#"
|
|
5
|
+
kind: instruction
|
|
6
|
+
name: vfncvt.sat.f.f.q
|
|
7
|
+
long_name: Vector floating-point FP32 saturating conversion to OFP8
|
|
8
|
+
description: |
|
|
9
|
+
Converts FP32 floating-point elements in vector register vs2 to OFP8
|
|
10
|
+
elements and stores the results in vector register vd according to mask vm.
|
|
11
|
+
Infinite results are converted to the maximum-magnitude finite value of the
|
|
12
|
+
same sign.
|
|
13
|
+
definedBy:
|
|
14
|
+
extension:
|
|
15
|
+
name: Zvfofp8min
|
|
16
|
+
assembly: vd, vs2, vm
|
|
17
|
+
encoding:
|
|
18
|
+
match: 010010------11011001-----1010111
|
|
19
|
+
variables:
|
|
20
|
+
- name: vm
|
|
21
|
+
location: 25-25
|
|
22
|
+
- name: vs2
|
|
23
|
+
location: 24-20
|
|
24
|
+
- name: vd
|
|
25
|
+
location: 11-7
|
|
26
|
+
access:
|
|
27
|
+
s: always
|
|
28
|
+
u: always
|
|
29
|
+
vs: always
|
|
30
|
+
vu: always
|
|
31
|
+
data_independent_timing: false
|
|
32
|
+
operation(): |
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
|
2
|
+
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
# yaml-language-server: $schema=../../../../schemas/inst_schema.json
|
|
4
|
+
$schema: "inst_schema.json#"
|
|
5
|
+
kind: instruction
|
|
6
|
+
name: vfncvtbf16.sat.f.f.w
|
|
7
|
+
long_name: Vector saturating narrowing BFloat16 to OFP8 conversion
|
|
8
|
+
description: |
|
|
9
|
+
Converts BFloat16 floating-point elements in vector register vs2 to OFP8
|
|
10
|
+
elements and stores the results in vector register vd according to mask vm.
|
|
11
|
+
Infinite results are converted to the maximum-magnitude finite value of the
|
|
12
|
+
same sign.
|
|
13
|
+
definedBy:
|
|
14
|
+
extension:
|
|
15
|
+
name: Zvfofp8min
|
|
16
|
+
assembly: vd, vs2, vm
|
|
17
|
+
encoding:
|
|
18
|
+
match: 010010------11111001-----1010111
|
|
19
|
+
variables:
|
|
20
|
+
- name: vm
|
|
21
|
+
location: 25-25
|
|
22
|
+
- name: vs2
|
|
23
|
+
location: 24-20
|
|
24
|
+
- name: vd
|
|
25
|
+
location: 11-7
|
|
26
|
+
access:
|
|
27
|
+
s: always
|
|
28
|
+
u: always
|
|
29
|
+
vs: always
|
|
30
|
+
vu: always
|
|
31
|
+
data_independent_timing: false
|
|
32
|
+
operation(): |
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Performs a bitwise AND operation between vector register vs2 and the bitwise NOT of vector register vs1, storing results in vector register vd according to mask vm.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, vs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 000001-----------000-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Performs a bitwise AND operation between vector register vs2 and the bitwise NOT of scalar register xs1, storing results in vector register vd according to mask vm.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, xs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 000001-----------100-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Reverses the byte order within each element of vector register vs2, storing results in vector register vd according to mask vm. Similar to vrev8.v but with different encoding.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010010------01000010-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Reverses the byte order within each element of vector register vs2, storing results in vector register vd according to mask vm. This is equivalent to a byte-level reversal of each element.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010010------01001010-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Rotates each element in vector register vs2 left by the amount specified in vector register vs1, storing results in vector register vd according to mask vm. The rotation amount is taken modulo the element width.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, vs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010101-----------000-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Rotates each element in vector register vs2 left by the amount specified in scalar register xs1, storing results in vector register vd according to mask vm. The rotation amount is taken modulo the element width.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, xs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010101-----------100-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Rotates each element in vector register vs2 right by the immediate shift amount, storing results in vector register vd according to mask vm. The rotation amount is taken modulo the element width.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, imm, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 01010------------011-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Rotates each element in vector register vs2 right by the amount specified in vector register vs1, storing results in vector register vd according to mask vm. The rotation amount is taken modulo the element width.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, vs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010100-----------000-----1010111
|
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
Rotates each element in vector register vs2 right by the amount specified in scalar register xs1, storing results in vector register vd according to mask vm. The rotation amount is taken modulo the element width.
|
|
12
12
|
definedBy:
|
|
13
13
|
extension:
|
|
14
|
-
name:
|
|
14
|
+
name: Zvkb
|
|
15
15
|
assembly: vd, vs2, xs1, vm
|
|
16
16
|
encoding:
|
|
17
17
|
match: 010100-----------100-----1010111
|
|
@@ -58,10 +58,12 @@ generated function direct_csr_lookup {
|
|
|
58
58
|
generated function indirect_csr_lookup {
|
|
59
59
|
returns Csr
|
|
60
60
|
arguments
|
|
61
|
+
PrivilegeMode target_mode,
|
|
61
62
|
Bits<MXLEN> csr_addr,
|
|
62
63
|
Bits<4> window_slot # 1-indexed "slot" in the window (corresponding to *ireg<window_slot>)
|
|
63
64
|
description {
|
|
64
|
-
Return CSR info for a CSR with indirect address +csr_addr+
|
|
65
|
+
Return CSR info for a CSR with indirect address +csr_addr+ in the target privilege-mode
|
|
66
|
+
indirect address space at window slot +window_slot+.
|
|
65
67
|
|
|
66
68
|
If no CSR exists, <return_value>.valid == false
|
|
67
69
|
}
|
|
@@ -3144,7 +3144,7 @@ function mstatus_sd_reset_value
|
|
|
3144
3144
|
fs_value = (!implemented?(ExtensionName::F)) ? 0 : MSTATUS_FS_LEGAL_VALUES[0];
|
|
3145
3145
|
}
|
|
3146
3146
|
if ((!implemented?(ExtensionName::V)) || ($array_size(MSTATUS_VS_LEGAL_VALUES) == 1)) {
|
|
3147
|
-
|
|
3147
|
+
vs_value = (!implemented?(ExtensionName::V)) ? 0 : MSTATUS_VS_LEGAL_VALUES[0];
|
|
3148
3148
|
}
|
|
3149
3149
|
|
|
3150
3150
|
return ((fs_value == 3) || (vs_value == 3)) ? 1 : 0;
|
|
@@ -71,11 +71,12 @@ function highest_set_bit {
|
|
|
71
71
|
description {
|
|
72
72
|
Returns the position of the highest (nearest MSB) bit that is '1',
|
|
73
73
|
or -1 if value is zero.
|
|
74
|
+
Callers should cast the return value with $signed().
|
|
74
75
|
}
|
|
75
76
|
body {
|
|
76
|
-
for (Bits<8> i=xlen()
|
|
77
|
-
if (value[i] == 1) {
|
|
78
|
-
return i;
|
|
77
|
+
for (Bits<8> i=xlen(); i > 0; i--) {
|
|
78
|
+
if (value[i-1] == 1) {
|
|
79
|
+
return i-1;
|
|
79
80
|
}
|
|
80
81
|
}
|
|
81
82
|
|
|
@@ -9,8 +9,8 @@ name: COUNTINHIBIT_EN
|
|
|
9
9
|
description: |
|
|
10
10
|
Indicates which hardware performance monitor counters can be disabled from `mcountinhibit`.
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
`COUNTINHIBIT_EN[n]` controls whether `mcountinhibit.HPM<n>` is writable. It does
|
|
13
|
+
not depend on whether `hpmcounter<n>`/`mhpmcounter<n>` is read-only zero.
|
|
14
14
|
|
|
15
15
|
COUNTINHIBIT_EN[1] can never be true, since it corresponds to `mcountinhibit.TM`,
|
|
16
16
|
which is always read-only-0.
|
|
@@ -25,6 +25,7 @@ schema:
|
|
|
25
25
|
type: boolean
|
|
26
26
|
maxItems: 32
|
|
27
27
|
minItems: 32
|
|
28
|
+
|
|
28
29
|
definedBy:
|
|
29
30
|
allOf:
|
|
30
31
|
- extension:
|
|
@@ -9,9 +9,8 @@ name: HCOUNTENABLE_EN
|
|
|
9
9
|
description: |
|
|
10
10
|
Indicates which counters can delegated via `hcounteren`
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
HCOUNTENABLE_EN[3] to true.
|
|
12
|
+
`HCOUNTENABLE_EN[n]` controls whether `hcounteren.HPM<n>` is writable. It does not
|
|
13
|
+
depend on whether `hpmcounter<n>`/`mhpmcounter<n>` is read-only zero.
|
|
15
14
|
|
|
16
15
|
HCOUNTENABLE_EN[0:2] must all be false if `Zicntr` is not implemented.
|
|
17
16
|
HCOUNTENABLE_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) -> !HCOUNTENABLE_EN[i];
|
|
35
|
-
(!HPM_COUNTER_EN[i]) -> !HCOUNTENABLE_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,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_COUNTER10_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 10
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 10
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter10`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[10]` 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_COUNTER11_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 11
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 11
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter11`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[11]` 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_COUNTER12_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 12
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 12
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter12`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[12]` 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_COUNTER13_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 13
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 13
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter13`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[13]` 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_COUNTER14_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 14
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 14
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter14`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[14]` 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_COUNTER15_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 15
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 15
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter15`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[15]` 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_COUNTER16_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 16
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 16
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter16`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[16]` 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_COUNTER17_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 17
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 17
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter17`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[17]` 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_COUNTER18_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 18
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 18
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter18`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[18]` 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_COUNTER19_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 19
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 19
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter19`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[19]` 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_COUNTER20_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 20
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 20
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter20`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[20]` 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_COUNTER21_WIDTH
|
|
12
|
+
long_name: Width of HPM counter 21
|
|
13
|
+
definedBy:
|
|
14
|
+
allOf:
|
|
15
|
+
- extension:
|
|
16
|
+
name: Sm
|
|
17
|
+
- param:
|
|
18
|
+
name: HPM_COUNTER_EN
|
|
19
|
+
index: 21
|
|
20
|
+
equal: true
|
|
21
|
+
description: |
|
|
22
|
+
The number of bits of precision implemented by `mhpmcounter21`.
|
|
23
|
+
|
|
24
|
+
This parameter exists only when `HPM_COUNTER_EN[21]` 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
|