From b06c1e7bcaba23576d242e54b3b3f02a7e27b281 Mon Sep 17 00:00:00 2001 From: YenHaoChen Date: Wed, 24 Apr 2024 07:50:38 +0800 Subject: [PATCH 1/2] Make Zaamo + Zalrsc imply A in misa --- disasm/isa_parser.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/disasm/isa_parser.cc b/disasm/isa_parser.cc index 3a99d0a3..9bd19bf1 100644 --- a/disasm/isa_parser.cc +++ b/disasm/isa_parser.cc @@ -339,6 +339,8 @@ isa_parser_t::isa_parser_t(const char* str, const char *priv) if (extension_table['A']) { extension_table[EXT_ZAAMO] = true; extension_table[EXT_ZALRSC] = true; + } else if (extension_table[EXT_ZAAMO] && extension_table[EXT_ZALRSC]) { + extension_table['A'] = true; } if (extension_table['B']) { From 55ee3a591667ce9c1a2b6ddaaa2a2b21c62ea1ac Mon Sep 17 00:00:00 2001 From: YenHaoChen Date: Wed, 24 Apr 2024 07:52:38 +0800 Subject: [PATCH 2/2] Make Zba + Zbb + Zbs imply B in misa --- disasm/isa_parser.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/disasm/isa_parser.cc b/disasm/isa_parser.cc index 9bd19bf1..d6455146 100644 --- a/disasm/isa_parser.cc +++ b/disasm/isa_parser.cc @@ -347,6 +347,8 @@ isa_parser_t::isa_parser_t(const char* str, const char *priv) extension_table[EXT_ZBA] = true; extension_table[EXT_ZBB] = true; extension_table[EXT_ZBS] = true; + } else if (extension_table[EXT_ZBA] && extension_table[EXT_ZBB] && extension_table[EXT_ZBS]) { + extension_table['B'] = true; } if (extension_table['C']) {