diff options
author | Ming-Yi Lai <ming-yi.lai@mediatek.com> | 2024-01-04 10:03:26 +0800 |
---|---|---|
committer | Ming-Yi Lai <ming-yi.lai@mediatek.com> | 2024-03-06 17:21:00 +0800 |
commit | 5ca914b13c78cb25e61a8bad8f2cf84024c4eb44 (patch) | |
tree | 048922e872451c29fbe4f7d6588a7968ffc7d969 | |
parent | 6408a0f61b631bc426cdf0c209a34bd37e8a27fe (diff) | |
download | spike-5ca914b13c78cb25e61a8bad8f2cf84024c4eb44.zip spike-5ca914b13c78cb25e61a8bad8f2cf84024c4eb44.tar.gz spike-5ca914b13c78cb25e61a8bad8f2cf84024c4eb44.tar.bz2 |
Zicfilp: Support lpad instruction in disassembler
-rw-r--r-- | disasm/disasm.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/disasm/disasm.cc b/disasm/disasm.cc index 65c15f5..a33cb71 100644 --- a/disasm/disasm.cc +++ b/disasm/disasm.cc @@ -868,6 +868,12 @@ void disassembler_t::add_instructions(const isa_parser_t* isa) DEFINE_XAMO(amocas_h) } + if (isa->extension_enabled(EXT_ZICFILP)) { + // lpad encodes as `auipc x0, label`, so it needs to be added before auipc + // for higher disassembling priority + DISASM_INSN("lpad", lpad, 0, {&bigimm}); + } + add_insn(new disasm_insn_t("j", match_jal, mask_jal | mask_rd, {&jump_target})); add_insn(new disasm_insn_t("jal", match_jal | match_rd_ra, mask_jal | mask_rd, {&jump_target})); add_insn(new disasm_insn_t("jal", match_jal, mask_jal, {&xrd, &jump_target})); |