aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2021-12-15 14:22:38 -0800
committerAndrew Waterman <andrew@sifive.com>2021-12-15 14:22:38 -0800
commita3e0d33be2cb94bd10b89f77c9b04f31331ac2e0 (patch)
tree5ce790c384856bca9c6925318effebb90c06307d
parent922aa58a5f5cb5008db236d9c21375a27197a038 (diff)
parent00ac3becba94d5ec25febd04a92c3aa5eb9cd432 (diff)
downloadriscv-opcodes-a3e0d33be2cb94bd10b89f77c9b04f31331ac2e0.zip
riscv-opcodes-a3e0d33be2cb94bd10b89f77c9b04f31331ac2e0.tar.gz
riscv-opcodes-a3e0d33be2cb94bd10b89f77c9b04f31331ac2e0.tar.bz2
Merge branch 'a4lg-make-intermediate-header'
-rw-r--r--.gitignore1
-rw-r--r--Makefile8
2 files changed, 6 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 9512eca..ccff222 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
.*.swp
+encoding.out.h
inst.chisel
inst.go
instr-table.tex
diff --git a/Makefile b/Makefile
index 481a274..5a03913 100644
--- a/Makefile
+++ b/Makefile
@@ -4,17 +4,19 @@ ISASIM_H := ../riscv-isa-sim/riscv/encoding.h
PK_H := ../riscv-pk/machine/encoding.h
ENV_H := ../riscv-tests/env/encoding.h
OPENOCD_H := ../riscv-openocd/src/target/riscv/encoding.h
+INSTALL_HEADER_FILES := $(ISASIM_H) $(PK_H) $(ENV_H) $(OPENOCD_H)
ALL_REAL_ILEN32_OPCODES := opcodes-rv32i opcodes-rv64i opcodes-rv32m opcodes-rv64m opcodes-rv32a opcodes-rv64a opcodes-rv32h opcodes-rv64h opcodes-rv32f opcodes-rv64f opcodes-rv32d opcodes-rv64d opcodes-rv32q opcodes-rv64q opcodes-rv32b opcodes-rv64b opcodes-system opcodes-svinval opcodes-rv32zfh opcodes-rv32d-zfh opcodes-rv32q-zfh opcodes-rv64zfh opcodes-rvk opcodes-rv32k opcodes-rv64k opcodes-zicbo
ALL_REAL_OPCODES := $(ALL_REAL_ILEN32_OPCODES) opcodes-rvc opcodes-rv32c opcodes-rv64c opcodes-custom opcodes-rvv opcodes-rvp
ALL_OPCODES := opcodes-pseudo $(ALL_REAL_OPCODES) opcodes-rvv-pseudo
-install: $(ISASIM_H) $(PK_H) $(ENV_H) $(OPENOCD_H) inst.chisel instr-table.tex priv-instr-table.tex
+install: encoding.out.h inst.chisel instr-table.tex priv-instr-table.tex
+ set -e; for FILE in $(INSTALL_HEADER_FILES); do cp -f encoding.out.h $$FILE; done
-$(ISASIM_H) $(PK_H) $(ENV_H) $(OPENOCD_H): $(ALL_OPCODES) parse_opcodes encoding.h
+encoding.out.h: $(ALL_OPCODES) parse_opcodes encoding.h
echo "/*" > $@
- echo " * This file is auto-generated by running 'make $@' in" >> $@
+ echo " * This file is auto-generated by running 'make' in" >> $@
echo " * https://github.com/riscv/riscv-opcodes (`git log -1 --format="format:%h"`)" >> $@
echo " */" >> $@
echo >> $@