[PATCH v2] opcodes: cris: move desc & opc files from sim/
Mike Frysinger
vapier@gentoo.org
Sun May 23 04:12:51 GMT 2021
All other cgen ports keep their desc & opc files under opcodes/, so
move the cris files over too. The cris-opc.c file is already here.
---
opcodes/Makefile.am | 16 ++++++++++++++-
opcodes/Makefile.in | 17 +++++++++++++++-
opcodes/cgen.sh | 34 +++++++++++++++++++++++++++++++
{sim/cris => opcodes}/cris-desc.c | 0
{sim/cris => opcodes}/cris-desc.h | 0
{sim/cris => opcodes}/cris-opc.h | 0
sim/cris/Makefile.in | 16 ++++-----------
7 files changed, 69 insertions(+), 14 deletions(-)
rename {sim/cris => opcodes}/cris-desc.c (100%)
rename {sim/cris => opcodes}/cris-desc.h (100%)
rename {sim/cris => opcodes}/cris-opc.h (100%)
diff --git a/opcodes/Makefile.am b/opcodes/Makefile.am
index 04980f36b113..30d86f012999 100644
--- a/opcodes/Makefile.am
+++ b/opcodes/Makefile.am
@@ -60,6 +60,7 @@ BUILD_LIB_DEPS = @BUILD_LIB_DEPS@
HFILES = \
aarch64-asm.h aarch64-dis.h aarch64-opc.h aarch64-tbl.h \
bpf-desc.h bpf-opc.h \
+ cris-desc.h cris-opc.h \
epiphany-desc.h epiphany-opc.h \
fr30-desc.h fr30-opc.h \
frv-desc.h frv-opc.h \
@@ -108,6 +109,7 @@ TARGET_LIBOPCODES_CFILES = \
cgen-opc.c \
cr16-dis.c \
cr16-opc.c \
+ cris-desc.c \
cris-dis.c \
cris-opc.c \
crx-dis.c \
@@ -371,10 +373,11 @@ CGENDEPS = \
$(CGENDIR)/opc-opinst.scm \
cgen-asm.in cgen-dis.in cgen-ibld.in
-CGEN_CPUS = epiphany fr30 frv ip2k iq2000 lm32 m32c m32r mep mt or1k xc16x xstormy16
+CGEN_CPUS = cris epiphany fr30 frv ip2k iq2000 lm32 m32c m32r mep mt or1k xc16x xstormy16
if CGEN_MAINT
BPF_DEPS = stamp-bpf
+CRIS_DEPS = stamp-cris
EPIPHANY_DEPS = stamp-epiphany
FR30_DEPS = stamp-fr30
FRV_DEPS = stamp-frv
@@ -390,6 +393,7 @@ XC16X_DEPS = stamp-xc16x
XSTORMY16_DEPS = stamp-xstormy16
else
BPF_DEPS =
+CRIS_DEPS =
EPIPHANY_DEPS =
FR30_DEPS =
FRV_DEPS =
@@ -431,6 +435,16 @@ stamp-bpf: $(CGENDEPS) $(CPUDIR)/bpf.cpu $(CPUDIR)/bpf.opc
$(MAKE) run-cgen arch=bpf prefix=bpf \
archfile=$(CPUDIR)/bpf.cpu opcfile=$(CPUDIR)/bpf.opc
+$(srcdir)/cris-desc.h $(srcdir)/cris-desc.c $(srcdir)/cris-opc.h \
+ $(srcdir)/cris-opc.c $(srcdir)/cris-dis.c: $(CRIS_DEPS)
+ @true
+
+stamp-cris: $(CGENDEPS) $(CPUDIR)/cris.cpu
+ $(SHELL) $(srcdir)/cgen.sh desc $(srcdir) $(CGEN) \
+ $(CGENDIR) "$(CGENFLAGS)" cris cris $(CPUDIR)/cris.cpu /dev/null \
+ "$(options)" "$(extrafiles)"
+ touch $@
+
$(srcdir)/epiphany-desc.h $(srcdir)/epiphany-desc.c $(srcdir)/epiphany-opc.h \
$(srcdir)/epiphany-opc.c $(srcdir)/epiphany-ibld.c \
$(srcdir)/epiphany-opinst.c $(srcdir)/epiphany-asm.c \
diff --git a/opcodes/cgen.sh b/opcodes/cgen.sh
index bdcc56df687c..cf6a5f112a66 100644
--- a/opcodes/cgen.sh
+++ b/opcodes/cgen.sh
@@ -175,6 +175,40 @@ opcodes)
rm -f ${tmp}-asm.in1 ${tmp}-dis.in1
;;
+desc)
+ # For ports that only generate the desc module & opc header.
+ rm -f ${tmp}-desc.h1 ${tmp}-desc.h
+ rm -f ${tmp}-desc.c1 ${tmp}-desc.c
+ rm -f ${tmp}-opc.h1 ${tmp}-opc.h
+
+ ${cgen} ${cgendir}/cgen-opc.scm \
+ -s ${cgendir} \
+ ${cgenflags} \
+ -OPC ${opcfile} \
+ -f "${archflags}" \
+ -m all \
+ -a ${archfile} \
+ -i all \
+ -H ${tmp}-desc.h1 \
+ -C ${tmp}-desc.c1 \
+ -O ${tmp}-opc.h1
+
+ sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+ -e "s/@prefix@/${prefix}/g" \
+ < ${tmp}-desc.h1 > ${tmp}-desc.h
+ ${rootdir}/move-if-change ${tmp}-desc.h ${srcdir}/${arch}-desc.h
+ sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+ -e "s/@prefix@/${prefix}/g" \
+ < ${tmp}-desc.c1 > ${tmp}-desc.c
+ ${rootdir}/move-if-change ${tmp}-desc.c ${srcdir}/${arch}-desc.c
+ sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+ -e "s/@prefix@/${prefix}/g" \
+ < ${tmp}-opc.h1 > ${tmp}-opc.h
+ ${rootdir}/move-if-change ${tmp}-opc.h ${srcdir}/${arch}-opc.h
+
+ rm -f ${tmp}-desc.h1 ${tmp}-desc.c1 ${tmp}-opc.h1
+ ;;
+
*)
echo "$0: bad action: ${action}" >&2
exit 1
diff --git a/sim/cris/cris-desc.c b/opcodes/cris-desc.c
similarity index 100%
rename from sim/cris/cris-desc.c
rename to opcodes/cris-desc.c
diff --git a/sim/cris/cris-desc.h b/opcodes/cris-desc.h
similarity index 100%
rename from sim/cris/cris-desc.h
rename to opcodes/cris-desc.h
diff --git a/sim/cris/cris-opc.h b/opcodes/cris-opc.h
similarity index 100%
rename from sim/cris/cris-opc.h
rename to opcodes/cris-opc.h
diff --git a/sim/cris/Makefile.in b/sim/cris/Makefile.in
index 3dcdbb2da022..d5e8a88f3a8a 100644
--- a/sim/cris/Makefile.in
+++ b/sim/cris/Makefile.in
@@ -29,14 +29,13 @@ SIM_OBJS = \
sim-if.o arch.o \
$(CRISV10F_OBJS) \
$(CRISV32F_OBJS) \
- traps.o \
- cris-desc.o
+ traps.o
# Extra headers included by sim-main.h.
# FIXME: $(srccom)/cgen-ops.h should be in CGEN_INCLUDE_DEPS.
SIM_EXTRA_DEPS = \
$(CGEN_INCLUDE_DEPS) $(srccom)/cgen-ops.h \
- arch.h cpuall.h cris-sim.h cris-desc.h engv10.h engv32.h
+ arch.h cpuall.h cris-sim.h engv10.h engv32.h
SIM_EXTRA_CLEAN = cris-clean
@@ -97,7 +96,7 @@ cris-clean:
rm -f mloopv$${v}f.c engv$${v}.h stamp-v$${v}fmloop; \
rm -f stamp-v$${v}fcpu; \
done
- -rm -f stamp-arch stamp-desc
+ -rm -f stamp-arch
-rm -f tmp-*
# cgen support, enable with --enable-cgen-maint
@@ -106,7 +105,7 @@ CGEN_MAINT = ; @true
@CGEN_MAINT@CGEN_MAINT =
# Useful when making CGEN-generated files manually, without --enable-cgen-maint.
-stamps: stamp-v10fmloop stamp-v32fmloop stamp-arch stamp-v10fcpu stamp-v32fcpu stamp-desc
+stamps: stamp-v10fmloop stamp-v32fmloop stamp-arch stamp-v10fcpu stamp-v32fcpu
stamp-arch: $(CGEN_READ_SCM) $(CGEN_ARCH_SCM) $(CPU_DIR)/cris.cpu Makefile
$(MAKE) cgen-arch $(CGEN_FLAGS_TO_PASS) mach=crisv10,crisv32 \
@@ -135,10 +134,3 @@ stamp-v32fcpu: $(CGEN_READ_SCM) $(CGEN_CPU_SCM) $(CGEN_DECODE_SCM) $(CPU_DIR)/cr
mv decodev32.c.tmp $(srcdir)/decodev32.c
touch stamp-v32fcpu
cpuv32.h cpuv32.c semcrisv32f-switch.c modelv32.c decodev32.c decodev32.h: $(CGEN_MAINT) stamp-v32fcpu
-
-stamp-desc: $(CGEN_READ_SCM) $(CGEN_DESC_SCM) $(CPU_DIR)/cris.cpu Makefile
- $(MAKE) cgen-desc $(CGEN_FLAGS_TO_PASS) \
- archfile=$(CPU_DIR)/cris.cpu \
- cpu=cris mach=all
- touch stamp-desc
-cris-desc.c cris-desc.h cris-opc.h: $(CGEN_MAINT) stamp-desc
--
2.31.1
More information about the Binutils
mailing list