diff options
Diffstat (limited to 'disasm/isa_parser.cc')
-rw-r--r-- | disasm/isa_parser.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/disasm/isa_parser.cc b/disasm/isa_parser.cc index baedc3f..24eb5f2 100644 --- a/disasm/isa_parser.cc +++ b/disasm/isa_parser.cc @@ -140,6 +140,10 @@ isa_parser_t::isa_parser_t(const char* str, const char *priv) // HINTs encoded in base-ISA instructions are always present. } else if (ext_str == "zihintntl") { // HINTs encoded in base-ISA instructions are always present. + } else if (ext_str == "ziccid") { + extension_table[EXT_ZICCID] = true; + } else if (ext_str == "ziccif") { + // aligned instruction fetch is always atomic in Spike } else if (ext_str == "zaamo") { extension_table[EXT_ZAAMO] = true; } else if (ext_str == "zalrsc") { @@ -386,6 +390,14 @@ isa_parser_t::isa_parser_t(const char* str, const char *priv) extension_table[EXT_SSDBLTRP] = true; } else if (ext_str == "smdbltrp") { extension_table[EXT_SMDBLTRP] = true; + } else if (ext_str == "smaia") { + extension_table[EXT_SMAIA] = true; + extension_table[EXT_SSAIA] = true; + extension_table[EXT_SMCSRIND] = true; + extension_table[EXT_SSCSRIND] = true; + } else if (ext_str == "ssaia") { + extension_table[EXT_SSAIA] = true; + extension_table[EXT_SSCSRIND] = true; } else if (ext_str[0] == 'x') { extension_table['X'] = true; if (ext_str.size() == 1) { |