diff options
Diffstat (limited to 'riscv/overlap_list.h')
-rw-r--r-- | riscv/overlap_list.h | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/riscv/overlap_list.h b/riscv/overlap_list.h index 04ae443..253be45 100644 --- a/riscv/overlap_list.h +++ b/riscv/overlap_list.h @@ -1,6 +1,10 @@ -DECLARE_OVERLAP_INSN(c_fsdsp, EXT_ZCD) -DECLARE_OVERLAP_INSN(c_fld, EXT_ZCD) -DECLARE_OVERLAP_INSN(c_fldsp, EXT_ZCD) +// these overlap c.ld[sp]/c.sd[sp] +DECLARE_OVERLAP_INSN(c_flw, EXT_ZCF) +DECLARE_OVERLAP_INSN(c_flwsp, EXT_ZCF) +DECLARE_OVERLAP_INSN(c_fsw, EXT_ZCF) +DECLARE_OVERLAP_INSN(c_fswsp, EXT_ZCF) + +// these overlap c.fsdsp DECLARE_OVERLAP_INSN(cm_push, EXT_ZCMP) DECLARE_OVERLAP_INSN(cm_pop, EXT_ZCMP) DECLARE_OVERLAP_INSN(cm_popret, EXT_ZCMP) @@ -8,20 +12,23 @@ DECLARE_OVERLAP_INSN(cm_popretz, EXT_ZCMP) DECLARE_OVERLAP_INSN(cm_mva01s, EXT_ZCMP) DECLARE_OVERLAP_INSN(cm_mvsa01, EXT_ZCMP) DECLARE_OVERLAP_INSN(cm_jalt, EXT_ZCMT) -DECLARE_OVERLAP_INSN(c_fsd, EXT_ZCD) + +// c.ebreak and c.jalr overlap c.add DECLARE_OVERLAP_INSN(c_ebreak, EXT_ZCA) DECLARE_OVERLAP_INSN(c_jalr, EXT_ZCA) + +// c.jr overlaps c.mv DECLARE_OVERLAP_INSN(c_jr, EXT_ZCA) -DECLARE_OVERLAP_INSN(vaesdf_vv, EXT_ZVKNED) -DECLARE_OVERLAP_INSN(vghsh_vv, EXT_ZVKG) -DECLARE_OVERLAP_INSN(vsha2ms_vv, EXT_ZVKNHA) -DECLARE_OVERLAP_INSN(vsha2ms_vv, EXT_ZVKNHB) -DECLARE_OVERLAP_INSN(vsm3me_vv, EXT_ZVKSH) + +// lpad overlaps auipc DECLARE_OVERLAP_INSN(lpad, EXT_ZICFILP) -DECLARE_OVERLAP_INSN(mop_r_28, EXT_ZIMOP) -DECLARE_OVERLAP_INSN(mop_r_N, EXT_ZIMOP) -DECLARE_OVERLAP_INSN(mop_rr_7, EXT_ZIMOP) -DECLARE_OVERLAP_INSN(mop_rr_N, EXT_ZIMOP) + +// these overlap Zimop/Zcmop +DECLARE_OVERLAP_INSN(ssrdp, EXT_ZICFISS) +DECLARE_OVERLAP_INSN(sspush_x1, EXT_ZICFISS) +DECLARE_OVERLAP_INSN(sspush_x5, EXT_ZICFISS) +DECLARE_OVERLAP_INSN(sspopchk_x1, EXT_ZICFISS) +DECLARE_OVERLAP_INSN(sspopchk_x5, EXT_ZICFISS) DECLARE_OVERLAP_INSN(c_sspush_x1, EXT_ZICFISS) DECLARE_OVERLAP_INSN(c_sspopchk_x5, EXT_ZICFISS) DECLARE_OVERLAP_INSN(c_mop_N, EXT_ZCMOP) |