This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Move print_insn_XXX to an opcodes internal header, again


On Mon, Jul 10, 2017 at 05:14:58PM +0100, Yao Qi wrote:
> diff --git a/opcodes/cgen.sh b/opcodes/cgen.sh
> index 637cf89..cdfa011 100644
> --- a/opcodes/cgen.sh
> +++ b/opcodes/cgen.sh
> @@ -155,6 +155,8 @@ opcodes)
>  	  | sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
>  		-e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
>  	  > ${tmp}-dis.c
> +	# Mark these generated files read-only.
> +	sed -i '1 i /* -*- buffer-read-only: t -*- vi:set ro: *\/' ${tmp}-dis.c
>  	${rootdir}/move-if-change ${tmp}-dis.c ${srcdir}/${prefix}-dis.c
>  
>  	# Remove temporary files.

Good idea.  In fact, I like it so much I'm going to steal it to add
the header to all the cgen.sh generated files.

diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 9addcce..e6e4fa1 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,102 @@
+2017-07-11  Yao Qi  <yao.qi@linaro.org>
+	    Alan Modra  <amodra@gmail.com>
+
+	* cgen.sh: Mark generated files read-only.
+	* epiphany-asm.c: Regenerate.
+	* epiphany-desc.c: Regenerate.
+	* epiphany-desc.h: Regenerate.
+	* epiphany-dis.c: Regenerate.
+	* epiphany-ibld.c: Regenerate.
+	* epiphany-opc.c: Regenerate.
+	* epiphany-opc.h: Regenerate.
+	* fr30-asm.c: Regenerate.
+	* fr30-desc.c: Regenerate.
+	* fr30-desc.h: Regenerate.
+	* fr30-dis.c: Regenerate.
+	* fr30-ibld.c: Regenerate.
+	* fr30-opc.c: Regenerate.
+	* fr30-opc.h: Regenerate.
+	* frv-asm.c: Regenerate.
+	* frv-desc.c: Regenerate.
+	* frv-desc.h: Regenerate.
+	* frv-dis.c: Regenerate.
+	* frv-ibld.c: Regenerate.
+	* frv-opc.c: Regenerate.
+	* frv-opc.h: Regenerate.
+	* ip2k-asm.c: Regenerate.
+	* ip2k-desc.c: Regenerate.
+	* ip2k-desc.h: Regenerate.
+	* ip2k-dis.c: Regenerate.
+	* ip2k-ibld.c: Regenerate.
+	* ip2k-opc.c: Regenerate.
+	* ip2k-opc.h: Regenerate.
+	* iq2000-asm.c: Regenerate.
+	* iq2000-desc.c: Regenerate.
+	* iq2000-desc.h: Regenerate.
+	* iq2000-dis.c: Regenerate.
+	* iq2000-ibld.c: Regenerate.
+	* iq2000-opc.c: Regenerate.
+	* iq2000-opc.h: Regenerate.
+	* lm32-asm.c: Regenerate.
+	* lm32-desc.c: Regenerate.
+	* lm32-desc.h: Regenerate.
+	* lm32-dis.c: Regenerate.
+	* lm32-ibld.c: Regenerate.
+	* lm32-opc.c: Regenerate.
+	* lm32-opc.h: Regenerate.
+	* lm32-opinst.c: Regenerate.
+	* m32c-asm.c: Regenerate.
+	* m32c-desc.c: Regenerate.
+	* m32c-desc.h: Regenerate.
+	* m32c-dis.c: Regenerate.
+	* m32c-ibld.c: Regenerate.
+	* m32c-opc.c: Regenerate.
+	* m32c-opc.h: Regenerate.
+	* m32r-asm.c: Regenerate.
+	* m32r-desc.c: Regenerate.
+	* m32r-desc.h: Regenerate.
+	* m32r-dis.c: Regenerate.
+	* m32r-ibld.c: Regenerate.
+	* m32r-opc.c: Regenerate.
+	* m32r-opc.h: Regenerate.
+	* m32r-opinst.c: Regenerate.
+	* mep-asm.c: Regenerate.
+	* mep-desc.c: Regenerate.
+	* mep-desc.h: Regenerate.
+	* mep-dis.c: Regenerate.
+	* mep-ibld.c: Regenerate.
+	* mep-opc.c: Regenerate.
+	* mep-opc.h: Regenerate.
+	* mt-asm.c: Regenerate.
+	* mt-desc.c: Regenerate.
+	* mt-desc.h: Regenerate.
+	* mt-dis.c: Regenerate.
+	* mt-ibld.c: Regenerate.
+	* mt-opc.c: Regenerate.
+	* mt-opc.h: Regenerate.
+	* or1k-asm.c: Regenerate.
+	* or1k-desc.c: Regenerate.
+	* or1k-desc.h: Regenerate.
+	* or1k-dis.c: Regenerate.
+	* or1k-ibld.c: Regenerate.
+	* or1k-opc.c: Regenerate.
+	* or1k-opc.h: Regenerate.
+	* or1k-opinst.c: Regenerate.
+	* xc16x-asm.c: Regenerate.
+	* xc16x-desc.c: Regenerate.
+	* xc16x-desc.h: Regenerate.
+	* xc16x-dis.c: Regenerate.
+	* xc16x-ibld.c: Regenerate.
+	* xc16x-opc.c: Regenerate.
+	* xc16x-opc.h: Regenerate.
+	* xstormy16-asm.c: Regenerate.
+	* xstormy16-desc.c: Regenerate.
+	* xstormy16-desc.h: Regenerate.
+	* xstormy16-dis.c: Regenerate.
+	* xstormy16-ibld.c: Regenerate.
+	* xstormy16-opc.c: Regenerate.
+	* xstormy16-opc.h: Regenerate.
+
 2017-07-07  Alan Modra  <amodra@gmail.com>
 
 	* cgen-dis.in: Include disassemble.h, not dis-asm.h.
diff --git a/opcodes/cgen.sh b/opcodes/cgen.sh
index 637cf89..fdd5b32 100644
--- a/opcodes/cgen.sh
+++ b/opcodes/cgen.sh
@@ -82,6 +82,8 @@ do
     esac
 done
 
+header="/* DO NOT EDIT!  -*- buffer-read-only: t -*- vi:set ro:  */"
+
 case $action in
 opcodes)
 	# Remove residual working files.
@@ -113,27 +115,32 @@ opcodes)
 		${extrafile_args}
 
 	# Customise generated files for the particular architecture.
-	sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	sed -e "1i$header" \
+	    -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	    -e 's/[ 	][ 	]*$//' < ${tmp}-desc.h1 > ${tmp}-desc.h
 	${rootdir}/move-if-change ${tmp}-desc.h ${srcdir}/${prefix}-desc.h
 
-	sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	sed -e "1i$header" \
+	    -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	    -e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
 	    < ${tmp}-desc.c1 > ${tmp}-desc.c
 	${rootdir}/move-if-change ${tmp}-desc.c ${srcdir}/${prefix}-desc.c
 
-	sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	sed -e "1i$header" \
+	    -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	    -e 's/[ 	][ 	]*$//' < ${tmp}-opc.h1 > ${tmp}-opc.h
 	${rootdir}/move-if-change ${tmp}-opc.h ${srcdir}/${prefix}-opc.h
 
-	sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	sed -e "1i$header" \
+	    -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	    -e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
 	    < ${tmp}-opc.c1 > ${tmp}-opc.c
 	${rootdir}/move-if-change ${tmp}-opc.c ${srcdir}/${prefix}-opc.c
 
 	case $extrafiles in
 	*opinst*)
-	  sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	  sed -e "1i$header" \
+	      -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	      -e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
 	      < ${tmp}-opinst.c1 >${tmp}-opinst.c
 	  ${rootdir}/move-if-change ${tmp}-opinst.c ${srcdir}/${prefix}-opinst.c
@@ -141,18 +148,21 @@ opcodes)
 	esac
 
 	cat ${srcdir}/cgen-ibld.in ${tmp}-ibld.in1 | \
-	  sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	  sed -e "1i$header" \
+	    -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 	    -e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' > ${tmp}-ibld.c
 	${rootdir}/move-if-change ${tmp}-ibld.c ${srcdir}/${prefix}-ibld.c
 
 	sed -e "/ -- assembler routines/ r ${tmp}-asm.in1" ${srcdir}/cgen-asm.in \
-	  | sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	  | sed -e "1i$header" \
+		-e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 		-e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
 	  > ${tmp}-asm.c
 	${rootdir}/move-if-change ${tmp}-asm.c ${srcdir}/${prefix}-asm.c
 
 	sed -e "/ -- disassembler routines/ r ${tmp}-dis.in1" ${srcdir}/cgen-dis.in \
-	  | sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+	  | sed -e "1i$header" \
+		-e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
 		-e "s/@prefix@/${prefix}/" -e 's/[ 	][ 	]*$//' \
 	  > ${tmp}-dis.c
 	${rootdir}/move-if-change ${tmp}-dis.c ${srcdir}/${prefix}-dis.c

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]