From d4a26c50d1c8d69082533196b7f79e4762fb9637 Mon Sep 17 00:00:00 2001 From: Albert Ou Date: Thu, 23 Oct 2014 17:55:00 -0700 Subject: Prevent regenerating the Hwacha spike header by default Not every instruction in the main opcodes file is implemented by Hwacha; at present, updating opcodes_hwacha_ut.h requires manual culling of the unneeded instructions to avoid breaking the spike build. --- Makefile | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 6c84f92..18f179f 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ +SHELL := /bin/sh + ISASIM_H := ../riscv-isa-sim/riscv/encoding.h ISASIM_HWACHA_H := ../riscv-isa-sim/hwacha/opcodes_hwacha_ut.h PK_H := ../riscv-pk/pk/encoding.h @@ -7,22 +9,19 @@ XCC_H := ../riscv-gcc/gcc-4.6.1/gcc/config/riscv/riscv-opc.h ALL_OPCODES := opcodes opcodes-pseudo opcodes-rvc opcodes-hwacha opcodes-hwacha-pseudo opcodes-hwacha-ut opcodes-custom -install: $(ISASIM_H) $(ISASIM_HWACHA_H) $(PK_H) $(ENV_H) $(GAS_H) $(XCC_H) inst.chisel instr-table.tex +install: $(ISASIM_H) $(PK_H) $(ENV_H) $(GAS_H) $(XCC_H) inst.chisel instr-table.tex $(ISASIM_H) $(PK_H) $(ENV_H): $(ALL_OPCODES) parse-opcodes cp encoding.h $@ - cat opcodes | ./parse-opcodes -c >> $@ + ./parse-opcodes -c < opcodes >> $@ $(GAS_H) $(XCC_H): $(ALL_OPCODES) parse-opcodes cat $(ALL_OPCODES) | ./parse-opcodes -c > $@ $(ISASIM_HWACHA_H): $(ALL_OPCODES) parse-opcodes - echo "#define DECLARE_INSN DECLARE_INSN" > hwacha.tmp.cc - cat opcodes opcodes-hwacha-ut | ./parse-opcodes -c >> hwacha.tmp.cc - sed -i -e 's/DECLARE_INSN(/DECLARE_INSN(ut_/g' hwacha.tmp.cc - gcc -E -P hwacha.tmp.cc -o $@ - sort $@ -o $@ # Sorted to make culling unneeded instructions easier - rm -f hwacha.tmp.cc + cat opcodes opcodes-hwacha-ut | ./parse-opcodes -c | \ + sed 's/DECLARE_INSN(/DECLARE_INSN(ut_/g' | \ + cpp -P -D DECLARE_INSN=DECLARE_INSN | sort -o $@ inst.chisel: $(ALL_OPCODES) parse-opcodes cat opcodes opcodes-custom | ./parse-opcodes -chisel > $@ -- cgit v1.2.3