work towards rvc 1.8
[riscv-isa-sim.git] / riscv / riscv.mk.in
index f35f200c18ae41ccee84cbea6b6199645d86464b..882f34db7163643e98c41adff43da11aafbe6a21 100644 (file)
@@ -84,8 +84,9 @@ riscv_insn_list = \
        c_addi16sp \
        c_addi4spn \
        c_addi \
-       c_addiw \
        c_addw \
+       c_and \
+       c_andi \
        c_beqz \
        c_bnez \
        c_ebreak \
@@ -103,10 +104,19 @@ riscv_insn_list = \
        c_jr \
        c_li \
        c_lui \
+       c_lbu \
        c_lw \
        c_lwsp \
        c_mv \
+       c_or \
+       c_sll \
        c_slli \
+       c_srai \
+       c_srl \
+       c_srli \
+       c_sub \
+       c_subw \
+       c_xor \
        csrrc \
        csrrci \
        csrrs \
@@ -251,7 +261,9 @@ icache.h: mmu.h
        mv $@.tmp $@
 
 insn_list.h: $(src_dir)/riscv/riscv.mk.in
-       echo $(riscv_insn_list) | sed 's/\s\+\|$$/\n/g' | sed '/^$$/d' | sed 's/\./_/g' | sed 's/\(.*\)/DEFINE_INSN(\1)/' > $@.tmp
+       for insn in $(foreach insn,$(riscv_insn_list),$(subst .,_,$(insn))) ; do \
+               printf 'DEFINE_INSN(%s)\n' "$${insn}" ; \
+       done > $@.tmp
        mv $@.tmp $@
 
 $(riscv_gen_srcs): %.cc: insns/%.h insn_template.cc