[m68k] Fix m68k-netbsdelf bootstrap
Andreas Schwab
schwab@suse.de
Tue Jan 13 13:53:00 GMT 2004
Bernardo Innocenti <bernie@develer.com> writes:
> It would be nice if we could factor these multiple REGISTER_NAMES
> definitions in a single place.
This is easy, now that we require C89. Tested with a ia64->m68k-linux
cross compiler. Could you please double check?
Andreas.
2004-01-13 Andreas Schwab <schwab@suse.de>
* config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with
REGISTER_PREFIX.
* config/m68k/coff.h (REGISTER_NAMES): Don't redefine.
* config/m68k/hp320.h (REGISTER_NAMES): Likewise.
* config/m68k/linux.h (REGISTER_NAMES): Likewise.
* config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
* config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise.
* config/m68k/sgs.h (REGISTER_NAMES): Likewise.
Index: gcc/config/m68k/coff.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/coff.h,v
retrieving revision 1.17
diff -u -p -a -r1.17 coff.h
--- gcc/config/m68k/coff.h 27 Sep 2003 04:48:24 -0000 1.17
+++ gcc/config/m68k/coff.h 13 Jan 2004 12:56:19 -0000
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler.
m68k series COFF object files and debugging, version.
- Copyright (C) 1994, 1996, 1997, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1996, 1997, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -67,14 +67,6 @@ Boston, MA 02111-1307, USA. */
else \
return "jmp %%pc@(2,%0:w)"; \
} while (0)
-
-/* Here are the new register names. */
-
-#undef REGISTER_NAMES
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", "argptr" }
#define TARGET_ASM_FILE_START_FILE_DIRECTIVE true
Index: gcc/config/m68k/hp320.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/hp320.h,v
retrieving revision 1.30
diff -u -p -a -r1.30 hp320.h
--- gcc/config/m68k/hp320.h 27 Sep 2003 04:48:24 -0000 1.30
+++ gcc/config/m68k/hp320.h 13 Jan 2004 12:56:19 -0000
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler. HP-UX 68000/68020 version.
- Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2002, 2003
+ Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -134,7 +134,6 @@ Boston, MA 02111-1307, USA. */
/* Override parts of m68k.h to fit the HPUX assembler. */
#undef TARGET_VERSION
-#undef REGISTER_NAMES
#undef ASM_OUTPUT_REG_PUSH
#undef ASM_OUTPUT_REG_POP
#undef ASM_APP_ON
@@ -154,11 +153,6 @@ Boston, MA 02111-1307, USA. */
#undef REGISTER_PREFIX
#define TARGET_VERSION fprintf (stderr, " (68k, SGS/hpux syntax)");
-
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", "argptr"}
#define IMMEDIATE_PREFIX "&"
#define REGISTER_PREFIX "%"
Index: gcc/config/m68k/linux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/linux.h,v
retrieving revision 1.39
diff -u -p -a -r1.39 linux.h
--- gcc/config/m68k/linux.h 29 Nov 2003 03:08:11 -0000 1.39
+++ gcc/config/m68k/linux.h 13 Jan 2004 12:56:19 -0000
@@ -1,6 +1,6 @@
/* Definitions for Motorola 68k running Linux-based GNU systems with
ELF format.
- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -58,17 +58,6 @@ Boston, MA 02111-1307, USA. */
#define USER_LABEL_PREFIX ""
#define ASM_COMMENT_START "|"
-
-/* How to refer to registers in assembler output.
- This sequence is indexed by compiler's hard-register-number.
- Motorola format uses different register names than defined in m68k.h. */
-
-#undef REGISTER_NAMES
-
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", "argptr" }
#undef SIZE_TYPE
#define SIZE_TYPE "unsigned int"
Index: gcc/config/m68k/m68k.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/m68k.h,v
retrieving revision 1.103
diff -u -p -a -r1.103 m68k.h
--- gcc/config/m68k/m68k.h 13 Dec 2003 04:44:07 -0000 1.103
+++ gcc/config/m68k/m68k.h 13 Jan 2004 12:56:19 -0000
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler.
Sun 68000/68020 version.
Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1462,9 +1462,15 @@ do { if (cc_prev_status.flags & CC_IN_68
This sequence is indexed by compiler's hard-register-number (see above). */
#define REGISTER_NAMES \
-{"d0", "d1", "d2", "d3", "d4", "d5", "d6", "d7", \
- "a0", "a1", "a2", "a3", "a4", "a5", "a6", "sp", \
- "fp0", "fp1", "fp2", "fp3", "fp4", "fp5", "fp6", "fp7", "argptr" }
+{REGISTER_PREFIX"d0", REGISTER_PREFIX"d1", REGISTER_PREFIX"d2", \
+ REGISTER_PREFIX"d3", REGISTER_PREFIX"d4", REGISTER_PREFIX"d5", \
+ REGISTER_PREFIX"d6", REGISTER_PREFIX"d7", \
+ REGISTER_PREFIX"a0", REGISTER_PREFIX"a1", REGISTER_PREFIX"a2", \
+ REGISTER_PREFIX"a3", REGISTER_PREFIX"a4", REGISTER_PREFIX"a5", \
+ REGISTER_PREFIX"a6", REGISTER_PREFIX"sp", \
+ REGISTER_PREFIX"fp0", REGISTER_PREFIX"fp1", REGISTER_PREFIX"fp2", \
+ REGISTER_PREFIX"fp3", REGISTER_PREFIX"fp4", REGISTER_PREFIX"fp5", \
+ REGISTER_PREFIX"fp6", REGISTER_PREFIX"fp7", REGISTER_PREFIX"argptr" }
/* How to renumber registers for dbx and gdb.
On the Sun-3, the floating point registers have numbers
Index: gcc/config/m68k/m68kelf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/m68kelf.h,v
retrieving revision 1.24
diff -u -p -a -r1.24 m68kelf.h
--- gcc/config/m68k/m68kelf.h 30 Nov 2003 04:20:27 -0000 1.24
+++ gcc/config/m68k/m68kelf.h 13 Jan 2004 12:56:19 -0000
@@ -1,7 +1,7 @@
/* m68kelf support, derived from m68kv4.h */
/* Target definitions for GNU compiler for mc680x0 running System V.4
- Copyright (C) 1991, 1993, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
Written by Ron Guilmette (rfg@netcom.com) and Fred Fish (fnf@cygnus.com).
@@ -76,18 +76,6 @@ Boston, MA 02111-1307, USA. */
else \
return "jmp %%pc@(2,%0:w)"; \
} while (0)
-
-/* How to refer to registers in assembler output.
- This sequence is indexed by compiler's hard-register-number.
- Motorola format uses different register names than defined
- in m68k.h. */
-
-#undef REGISTER_NAMES
-
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", "argptr" }
/* This is how to output an assembler line that says to advance the
location counter to a multiple of 2**LOG bytes. */
Index: gcc/config/m68k/netbsd-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/netbsd-elf.h,v
retrieving revision 1.19
diff -u -p -a -r1.19 netbsd-elf.h
--- gcc/config/m68k/netbsd-elf.h 30 Nov 2003 04:20:28 -0000 1.19
+++ gcc/config/m68k/netbsd-elf.h 13 Jan 2004 12:56:19 -0000
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler,
for m68k (including m68010) NetBSD platforms using the
ELF object format.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Wasabi Systems. Inc.
This file is derived from <m68k/m68kv4.h>, <m68k/m68kelf.h>,
@@ -173,19 +173,6 @@ while (0)
#undef ASM_COMMENT_START
#define ASM_COMMENT_START "|"
-
-
-/* How to refer to registers in assembler output.
- This sequence is indexed by compiler's hard-register-number.
- Motorola format uses different register names than defined in m68k.h.
- We also take this chance to convert 'a6' to 'fp' */
-
-#undef REGISTER_NAMES
-
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7" }
/* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to
Index: gcc/config/m68k/sgs.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/m68k/sgs.h,v
retrieving revision 1.19
diff -u -p -a -r1.19 sgs.h
--- gcc/config/m68k/sgs.h 27 Sep 2003 04:48:24 -0000 1.19
+++ gcc/config/m68k/sgs.h 13 Jan 2004 12:56:19 -0000
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler for m68k targets using
assemblers derived from AT&T "SGS" releases.
- Copyright (C) 1991, 1993, 1996, 2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1993, 1996, 2000, 2003, 2004 Free Software Foundation, Inc.
Written by Fred Fish (fnf@cygnus.com)
This file is part of GCC.
@@ -61,18 +61,6 @@ Boston, MA 02111-1307, USA. */
#undef IMMEDIATE_PREFIX
#define IMMEDIATE_PREFIX "&"
-
-/* How to refer to registers in assembler output.
- This sequence is indexed by compiler's hard-register-number.
- Motorola format uses different register names than defined in m68k.h.
- We also take this chance to convert 'a6' to 'fp' */
-
-#undef REGISTER_NAMES
-
-#define REGISTER_NAMES \
-{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \
- "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \
- "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", "argptr" }
/* This is how to output an assembler line that says to advance the
location counter to a multiple of 2**LOG bytes. */
--
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, MaxfeldstraÃe 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
More information about the Gcc-patches
mailing list