target-riscv.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/target-riscv.c b/target-riscv.c index 6d9113c1..201ac375 100644 --- a/target-riscv.c +++ b/target-riscv.c @@ -3,6 +3,7 @@ #include "target.h" #include "machine.h" #include +#include #define RISCV_32BIT (1 << 0) #define RISCV_64BIT (1 << 1) @@ -47,6 +48,12 @@ static void parse_march_riscv(const char *arg) { "n", 0 }, { "h", 0 }, { "s", 0 }, + { "i", 0 }, + { "e", 0 }, + { "_", 0 }, + { "Counters", 0 }, + { "Zicsr", 0 }, + { "Zifencei", 0 }, }; int i; @@ -60,7 +67,10 @@ static void parse_march_riscv(const char *arg) goto ext; } } - die("invalid argument to '-march': '%s'\n", arg); + +unknown: + fprintf(stderr, "WARNING: invalid argument to '-march': '%s'\n", arg); + return; ext: for (i = 0; i < ARRAY_SIZE(extensions); i++) { @@ -73,7 +83,7 @@ ext: } } if (arg[0]) - die("invalid argument to '-march': '%s'\n", arg); + goto unknown; } static void init_riscv(const struct target *self)