#
# Usage: /bin/sh cgen.sh {"arch"|"cpu"|"decode"|"defs"|"cpu-decode"} \
# srcdir cgen cgendir cgenflags \
-# arch archflags cpu mach suffix archfile extrafiles
+# arch archflags cpu mach suffix archfile extrafiles opcfile
#
# We store the generated files in the source directory until we decide to
# ship a Scheme interpreter (or other implementation) with gdb/binutils.
action=$1
srcdir=$2
-cgen=$3
+cgen="$3"
cgendir=$4
cgenflags=$5
arch=$6
shift ; suffix=$9
shift ; archfile=$9
shift ; extrafiles=$9
+shift ; opcfile=$9
rootdir=${srcdir}/../..
+test -z "${opcfile}" && opcfile=/dev/null
+
if test -z "$isa" ; then
isa=all
prefix=$cpu
rm -f tmp-arch.c1 tmp-arch.c
rm -f tmp-all.h1 tmp-all.h
- ${cgen} -s ${cgendir}/cgen-sim.scm \
+ ${cgen} ${cgendir}/cgen-sim.scm \
-s ${cgendir} \
${cgenflags} \
-f "${archflags}" \
;;
esac
- ${cgen} -s ${cgendir}/cgen-sim.scm \
+ ${cgen} ${cgendir}/cgen-sim.scm \
-s ${cgendir} \
${cgenflags} \
-f "${archflags}" \
defs)
rm -f tmp-defs.h1 tmp-defs.h
- ${cgen} -s ${cgendir}/cgen-sim.scm \
+ ${cgen} ${cgendir}/cgen-sim.scm \
-s ${cgendir} \
${cgenflags} \
-f "${archflags}" \
rm -f tmp-desc.c1 tmp-desc.c
rm -f tmp-opc.h1 tmp-opc.h
- ${cgen} -s ${cgendir}/cgen-opc.scm \
+ ${cgen} ${cgendir}/cgen-opc.scm \
-s ${cgendir} \
${cgenflags} \
+ -OPC ${opcfile} \
-f "${archflags}" \
-m ${mach} \
-a ${archfile} \