cgen opcodes files won't compile with gcc-4.0

Alan Modra amodra@bigpond.net.au
Thu Feb 17 15:51:00 GMT 2005


This fixes an error when compiling binutils targets that use cgen with
gcc-4.0.  See http://gcc.gnu.org/ml/gcc/2005-02/msg00054.html.  gcc-4.0
is fussy about arrays, and cgen_ifld_table was being declared before
struct cgen_ifld was defined.

cgen/
	* desc-cpu.scm (gen-ifld-decls): Move cgen_ifld_table from here..
	(cgen-desc.h): ..to here, after opcode/cgen.h include.

OK to apply?

opcodes/
	* fr30-desc.c: Regenerate.
	* fr30-desc.h: Regenerate.
	* fr30-opc.c: Regenerate.
	* fr30-opc.h: Regenerate.
	* frv-desc.c: Regenerate.
	* frv-desc.h: Regenerate.
	* frv-opc.c: Regenerate.
	* frv-opc.h: Regenerate.
	* ip2k-desc.c: Regenerate.
	* ip2k-desc.h: Regenerate.
	* ip2k-opc.c: Regenerate.
	* ip2k-opc.h: Regenerate.
	* iq2000-desc.c: Regenerate.
	* iq2000-desc.h: Regenerate.
	* iq2000-opc.c: Regenerate.
	* iq2000-opc.h: Regenerate.
	* m32r-desc.c: Regenerate.
	* m32r-desc.h: Regenerate.
	* m32r-opc.c: Regenerate.
	* m32r-opc.h: Regenerate.
	* m32r-opinst.c: Regenerate.
	* openrisc-desc.c: Regenerate.
	* openrisc-desc.h: Regenerate.
	* openrisc-opc.c: Regenerate.
	* openrisc-opc.h: Regenerate.
	* xstormy16-desc.c: Regenerate.
	* xstormy16-desc.h: Regenerate.
	* xstormy16-opc.c: Regenerate.
	* xstormy16-opc.h: Regenerate.

Index: cgen/desc-cpu.scm
===================================================================
RCS file: /cvs/src/src/cgen/desc-cpu.scm,v
retrieving revision 1.19
diff -u -p -r1.19 desc-cpu.scm
--- cgen/desc-cpu.scm	9 Oct 2003 20:53:42 -0000	1.19
+++ cgen/desc-cpu.scm	17 Feb 2005 11:14:27 -0000
@@ -112,7 +112,6 @@ static const CGEN_MACH @arch@_cgen_mach_
   (logit 2 "Generating instruction field decls ...\n")
   (string-list
    "/* Ifield support.  */\n\n"
-   "extern const struct cgen_ifld @arch@_cgen_ifld_table[];\n\n"
    "/* Ifield attribute indices.  */\n\n"
    (gen-attr-enum-decl "cgen_ifld" (current-ifld-attr-list))
    (gen-enum-decl 'ifield_type "@arch@ ifield types"
@@ -1014,6 +1013,7 @@ init_tables ()
    gen-insn-decls
    "/* cgen.h uses things we just defined.  */\n"
    "#include \"opcode/cgen.h\"\n\n"
+   "extern const struct cgen_ifld @arch@_cgen_ifld_table[];\n\n"
    -gen-attr-table-decls
    -gen-mach-table-decls
    gen-hw-table-decls

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre



More information about the Binutils mailing list