aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1996-01-25 13:03:45 +0000
committerDoug Evans <dje@gnu.org>1996-01-25 13:03:45 +0000
commitcc21923bbcafebf10f28b771d83e25ed3c149e4f (patch)
tree4b8d8c58569c448b3e905ebbb825c04f0e79e503 /gcc
parentefbf8670a0033c43bbc4d510f69ae36d4a7053f9 (diff)
downloadgcc-cc21923bbcafebf10f28b771d83e25ed3c149e4f.zip
gcc-cc21923bbcafebf10f28b771d83e25ed3c149e4f.tar.gz
gcc-cc21923bbcafebf10f28b771d83e25ed3c149e4f.tar.bz2
(SPARC_{V9,ARCH64}): Define.
(TARGET_DEFAULT): Add MASK_ARCH64. (ENDFILE_SPEC): No longer need to check for -nostartfiles. (ASM_IDENTIFY_GCC): Define as empty. From-SVN: r11097
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/sparc/sp64-elf.h30
1 files changed, 16 insertions, 14 deletions
diff --git a/gcc/config/sparc/sp64-elf.h b/gcc/config/sparc/sp64-elf.h
index e6d50d2..6869d29 100644
--- a/gcc/config/sparc/sp64-elf.h
+++ b/gcc/config/sparc/sp64-elf.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for Sun SPARC-V9 on a hypothetical elf format machine.
- Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc.
Contributed by Doug Evans, dje@cygnus.com.
This file is part of GNU CC.
@@ -22,19 +22,14 @@ Boston, MA 02111-1307, USA. */
/* This is a v9 only compiler. -mv8 is not expected to work. If you want
a v8/v9 compiler, this isn't the place to do it. */
-/* ??? Until real v9 machines exist, all of this is subject to change. */
-/* ??? This file should really be called sp64-sol2.h or some such but that
- would be a bit misleading since no such machines exist yet. The current
- name is also misleading since the term "elf" is more properly applied to
- embedded configurations. */
-#define SPARCV9 /* See sparc.h. */
+#define SPARC_V9 1 /* See sparc.h. */
+#define SPARC_ARCH64 1
/* ??? We're taking the scheme of including another file and then overriding
the values we don't like a bit too far here. The alternative is to more or
less duplicate all of svr4.h, sparc/sysv4.h, and sparc/sol2.h here
- (suitably cleaned up). Until real sparc64 machines exist, it's not clear
- which is better. */
+ (suitably cleaned up). */
#include "sparc/sol2.h"
@@ -46,7 +41,8 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_DEFAULT
#define TARGET_DEFAULT \
- (MASK_V9 + MASK_STACK_BIAS + MASK_MEDANY + MASK_PTR64 + MASK_HARD_QUAD + MASK_EPILOGUE + MASK_FPU)
+ (MASK_V9 + MASK_ARCH64 + MASK_PTR64 + MASK_HARD_QUAD \
+ + MASK_STACK_BIAS + MASK_MEDANY + MASK_EPILOGUE + MASK_FPU)
/* __svr4__ is used by the C library */
#undef CPP_PREDEFINES
@@ -84,7 +80,7 @@ crtbegin.o%s \
"
#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "%{!nostartfiles:crtend.o%s}"
+#define ENDFILE_SPEC "crtend.o%s"
/* Use the default (for now). */
#undef LIB_SPEC
@@ -106,10 +102,11 @@ crtbegin.o%s \
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE 16
-/* ??? Disabled for v9 as the current implementation of the Medium/Anywhere
- code model needs this in the data segment (still true?). Let's hope the
- assembler is fixed. */
+/* The medium/anywhere code model practically requires us to put jump tables
+ in the text section as gcc is unable to distinguish LABEL_REF's of jump
+ tables from other label refs (when we need to). */
#undef JUMP_TABLES_IN_TEXT_SECTION
+#define JUMP_TABLES_IN_TEXT_SECTION
/* System V Release 4 uses DWARF debugging info.
GDB doesn't support 64 bit stabs yet and the desired debug format is DWARF
@@ -121,6 +118,11 @@ crtbegin.o%s \
#undef PREFERRED_DEBUGGING_TYPE
#define PREFERRED_DEBUGGING_TYPE DWARF_DEBUG
+/* Stabs doesn't use this, and it confuses a simulator. */
+/* ??? Need to see what DWARF needs, if anything. */
+#undef ASM_IDENTIFY_GCC
+#define ASM_IDENTIFY_GCC(FILE)
+
/* Define the names of various pseudo-ops used by the Sparc/svr4 assembler.
??? If ints are 64 bits then UNALIGNED_INT_ASM_OP (defined elsewhere) is
misnamed. These should all refer to explicit sizes (half/word/xword?),