diff --git a/src/riscv/riscv.c b/src/riscv/riscv.c index df0073a..872205f 100644 --- a/src/riscv/riscv.c +++ b/src/riscv/riscv.c @@ -62,6 +62,7 @@ int parse_multi_letter_extension(struct extensions* ext, char* e) { SET_ISA_EXT_MAP("zicbom", RISCV_ISA_EXT_ZICBOM) SET_ISA_EXT_MAP("zihintpause", RISCV_ISA_EXT_ZIHINTPAUSE) SET_ISA_EXT_MAP("svnapot", RISCV_ISA_EXT_SVNAPOT) + SET_ISA_EXT_MAP("zicbop", RISCV_ISA_EXT_ZICBOP) SET_ISA_EXT_MAP("zicboz", RISCV_ISA_EXT_ZICBOZ) SET_ISA_EXT_MAP("smaia", RISCV_ISA_EXT_SMAIA) SET_ISA_EXT_MAP("ssaia", RISCV_ISA_EXT_SSAIA) diff --git a/src/riscv/riscv.h b/src/riscv/riscv.h index f9d3d61..307a595 100644 --- a/src/riscv/riscv.h +++ b/src/riscv/riscv.h @@ -23,6 +23,7 @@ enum riscv_isa_ext_id { RISCV_ISA_EXT_ZICBOM, RISCV_ISA_EXT_ZIHINTPAUSE, RISCV_ISA_EXT_SVNAPOT, + RISCV_ISA_EXT_ZICBOP, RISCV_ISA_EXT_ZICBOZ, RISCV_ISA_EXT_SMAIA, RISCV_ISA_EXT_SSAIA, @@ -37,6 +38,7 @@ enum riscv_isa_ext_id { // https://five-embeddev.com/riscv-isa-manual/latest/preface.html#preface // https://en.wikichip.org/wiki/risc-v/standard_extensions +// (Zicbop) https://github.com/riscv/riscv-CMOs/blob/master/cmobase/Zicbop.adoc // Included all except for G static const struct extension extension_list[] = { { 'i' - 'a', "(I) Integer Instruction Set" }, @@ -64,6 +66,7 @@ static const struct extension extension_list[] = { { RISCV_ISA_EXT_ZIHINTPAUSE, "(Zihintpause) Pause Hint" }, { RISCV_ISA_EXT_SVNAPOT, "(Svnapot) Naturally Aligned Power of Two Pages" }, { RISCV_ISA_EXT_ZICBOZ, "(Zicboz) Cache Block Zero Operations" }, + { RISCV_ISA_EXT_ZICBOP, "(Zicbop) Cache Block Prefetch Operations" }, { RISCV_ISA_EXT_SMAIA, "(Smaia) Advanced Interrupt Architecture" }, { RISCV_ISA_EXT_SSAIA, "(Ssaia) Advanced Interrupt Architecture" }, { RISCV_ISA_EXT_ZBA, "(Zba) Address Generation" },