diff options
author | Andrew Waterman <andrew@sifive.com> | 2023-01-13 14:29:36 -0800 |
---|---|---|
committer | Andrew Waterman <andrew@sifive.com> | 2023-01-13 14:55:56 -0800 |
commit | 57ae9e68442047b7ea2f3461a0d1c8cd8b2e89e2 (patch) | |
tree | 95cc0828899cc8313b670288cf4d8e27dc38bdbe /riscv | |
parent | 830324dcd2fc75adc621939eed5a6639c62075bf (diff) | |
download | spike-57ae9e68442047b7ea2f3461a0d1c8cd8b2e89e2.zip spike-57ae9e68442047b7ea2f3461a0d1c8cd8b2e89e2.tar.gz spike-57ae9e68442047b7ea2f3461a0d1c8cd8b2e89e2.tar.bz2 |
Use more appropriate data structure for extension_table
We know its size at compile time.
Diffstat (limited to 'riscv')
-rw-r--r-- | riscv/isa_parser.cc | 1 | ||||
-rw-r--r-- | riscv/isa_parser.h | 4 |
2 files changed, 2 insertions, 3 deletions
diff --git a/riscv/isa_parser.cc b/riscv/isa_parser.cc index 9600a69..d3ef076 100644 --- a/riscv/isa_parser.cc +++ b/riscv/isa_parser.cc @@ -28,7 +28,6 @@ static void bad_priv_string(const char* priv) } isa_parser_t::isa_parser_t(const char* str, const char *priv) - : extension_table(NUM_ISA_EXTENSIONS, false) { isa_string = strtolower(str); const char* all_subsets = "mafdqchpv"; diff --git a/riscv/isa_parser.h b/riscv/isa_parser.h index 69df34a..0575d92 100644 --- a/riscv/isa_parser.h +++ b/riscv/isa_parser.h @@ -4,7 +4,7 @@ #include "decode.h" -#include <vector> +#include <bitset> #include <string> #include <unordered_map> @@ -98,7 +98,7 @@ public: protected: unsigned max_xlen; reg_t max_isa; - std::vector<bool> extension_table; + std::bitset<NUM_ISA_EXTENSIONS> extension_table; std::string isa_string; std::unordered_map<std::string, extension_t*> extensions; }; |