aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>2001-08-06 22:17:09 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>2001-08-06 18:17:09 -0400
commit362b68a82dcf98169e852579a784dd4bddcccc25 (patch)
treef941a3402a185f7653d42bca1bd5ae042a845441
parent5edf284040a034015d9ae7ae78c3cfd8939725a8 (diff)
downloadgcc-362b68a82dcf98169e852579a784dd4bddcccc25.zip
gcc-362b68a82dcf98169e852579a784dd4bddcccc25.tar.gz
gcc-362b68a82dcf98169e852579a784dd4bddcccc25.tar.bz2
darwin.h (DOUBLE_INT_ASM_OP): Add whitespace.
* config/rs6000/darwin.h (DOUBLE_INT_ASM_OP): Add whitespace. * config/rs6000/linux64.h (RS6000_MCOUNT): Define. ({SAVE,RESTORE}_FP_{PREFFIX,SUFFIX}): Define. * config/rs6000/rs6000.h (ASM_OUTPUT_DOUBLE_INT): Remove whitespace. * config/rs6000/sysv4.h (DOUBLE_INT_ASM_OP): Add whitespace. * config/rs6000/xcoff.h (DOUBLE_INT_ASM_OP): Add whitespace. From-SVN: r44677
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config/rs6000/darwin.h2
-rw-r--r--gcc/config/rs6000/linux64.h63
-rw-r--r--gcc/config/rs6000/rs6000.h2
-rw-r--r--gcc/config/rs6000/sysv4.h2
-rw-r--r--gcc/config/rs6000/xcoff.h2
6 files changed, 44 insertions, 38 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b3cbf8b..2573197 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2001-08-06 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/darwin.h (DOUBLE_INT_ASM_OP): Add whitespace.
+ * config/rs6000/linux64.h (RS6000_MCOUNT): Define.
+ ({SAVE,RESTORE}_FP_{PREFFIX,SUFFIX}): Define.
+ * config/rs6000/rs6000.h (ASM_OUTPUT_DOUBLE_INT): Remove whitespace.
+ * config/rs6000/sysv4.h (DOUBLE_INT_ASM_OP): Add whitespace.
+ * config/rs6000/xcoff.h (DOUBLE_INT_ASM_OP): Add whitespace.
+
2001-08-06 Neil Booth <neil@daikokuya.demon.co.uk>
* cpperror.c (print_containing_files): Moved to line-map.c.
@@ -848,8 +857,6 @@ Wed Aug 1 20:02:12 CEST 2001 Graham Stott <grahams@redhat.com>
(SET_ASM_OP): Remove, now defined where needed.
(FUNCTION_PROLOGUE): New macro definition.
(FUNCTION_EPILOGUE): New macro definition.
- (CONST_OK_FOR_LETTER_P): Change N to require that value is
- positive, too.
(ASM_OPEN_PAREN, ASM_CLOSE_PAREN): New macro definition.
* config/rs6000/xcoff.h: New file.
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index 0091807..f794113 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -193,4 +193,4 @@ Boston, MA 02111-1307, USA. */
: MAX ((COMPUTED), (SPECIFIED)))
/* XXX: Darwin supports neither .quad, or .llong, but it also doesn't
support 64 bit powerpc either, so this just keeps things happy. */
-#define DOUBLE_INT_ASM_OP ".quad"
+#define DOUBLE_INT_ASM_OP "\t.quad\t"
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index dc35273..8808554 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -21,31 +21,17 @@ Boston, MA 02111-1307, USA. */
/* Yes! We are AIX! Err. Wait. We're Linux!. No, wait, we're a
combo of both!*/
-#undef DEFAULT_ABI
+#undef DEFAULT_ABI
#define DEFAULT_ABI ABI_AIX
-#undef TARGET_AIX
+#undef TARGET_AIX
#define TARGET_AIX 1
-#undef TARGET_DEFAULT
+#undef TARGET_DEFAULT
#define TARGET_DEFAULT (MASK_POWERPC | MASK_POWERPC64 | MASK_64BIT | MASK_NEW_MNEMONICS)
-/* AIX does not have any init/fini or ctor/dtor sections, so create
- static constructors and destructors as normal functions. */
-/* #define ASM_OUTPUT_CONSTRUCTOR(file, name) */
-/* #define ASM_OUTPUT_DESTRUCTOR(file, name) */
#define USER_LABEL_PREFIX ""
-/* Tell the assembler to assume that all undefined names are external.
-
- Don't do this until the fixed IBM assembler is more generally available.
- When this becomes permanently defined, the ASM_OUTPUT_EXTERNAL,
- ASM_OUTPUT_EXTERNAL_LIBCALL, and RS6000_OUTPUT_BASENAME macros will no
- longer be needed. Also, the extern declaration of mcount in ASM_FILE_START
- will no longer be needed. */
-
-/* #define ASM_SPEC "-u %(asm_cpu)" */
-
/* AIX word-aligns FP doubles but doubleword-aligns 64-bit ints. */
#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED) \
(TYPE_MODE (TREE_CODE (TREE_TYPE (FIELD)) == ARRAY_TYPE \
@@ -65,18 +51,17 @@ Boston, MA 02111-1307, USA. */
: MAX ((COMPUTED), (SPECIFIED)))
/* Indicate that jump tables go in the text section. */
-#undef JUMP_TABLES_IN_TEXT_SECTION
+#undef JUMP_TABLES_IN_TEXT_SECTION
#define JUMP_TABLES_IN_TEXT_SECTION 1
/* Define cutoff for using external functions to save floating point. */
-#undef FP_SAVE_INLINE
+#undef FP_SAVE_INLINE
#define FP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) == 62 || (FIRST_REG) == 63)
-#undef TARGET_NO_TOC
-#undef TARGET_TOC
-
/* 64-bit PowerPC Linux always has a TOC. */
+#undef TARGET_NO_TOC
#define TARGET_NO_TOC 0
+#undef TARGET_TOC
#define TARGET_TOC 1
/* 64-bit PowerPC Linux always has GPR13 fixed. */
@@ -90,6 +75,7 @@ Boston, MA 02111-1307, USA. */
#define SETUP_FRAME_ADDRESSES() rs6000_aix_emit_builtin_unwind_init ()
#define PROFILE_HOOK(LABEL) output_profile_hook (LABEL)
+
/* Don't assume anything about the header files. */
#define NO_IMPLICIT_EXTERN_C
@@ -109,10 +95,10 @@ Boston, MA 02111-1307, USA. */
/* The GNU C++ standard library currently requires _GNU_SOURCE being
defined on glibc-based systems. This temporary hack accomplishes this,
it should go away as soon as libstdc++-v3 has a real fix. */
-#undef CPLUSPLUS_CPP_SPEC
+#undef CPLUSPLUS_CPP_SPEC
#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
-#undef LINK_SHLIB_SPEC
+#undef LINK_SHLIB_SPEC
#define LINK_SHLIB_SPEC "%{shared:-shared} %{!shared: %{static:-static}}"
#undef LIB_DEFAULT_SPEC
@@ -135,13 +121,13 @@ Boston, MA 02111-1307, USA. */
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
-#undef TOC_SECTION_ASM_OP
+#undef TOC_SECTION_ASM_OP
#define TOC_SECTION_ASM_OP "\t.section\t\".toc\",\"aw\""
-#undef MINIMAL_TOC_SECTION_ASM_OP
-#define MINIMAL_TOC_SECTION_ASM_OP "\t.section\t\".toc1\",\"aw\"\n\t.align 3"
+#undef MINIMAL_TOC_SECTION_ASM_OP
+#define MINIMAL_TOC_SECTION_ASM_OP "\t.section\t\".toc1\",\"aw\"\n\t.align 3"
-#undef TARGET_VERSION
+#undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (PowerPC64 GNU/Linux)");
/* Must be at least as big as our pointer type. */
@@ -157,19 +143,32 @@ Boston, MA 02111-1307, USA. */
#define WCHAR_TYPE_SIZE 32
/* Override rs6000.h definition. */
-#undef ASM_APP_ON
+#undef ASM_APP_ON
#define ASM_APP_ON "#APP\n"
/* Override rs6000.h definition. */
-#undef ASM_APP_OFF
+#undef ASM_APP_OFF
#define ASM_APP_OFF "#NO_APP\n"
/* PowerPC no-op instruction. */
-#undef RS6000_CALL_GLUE
+#undef RS6000_CALL_GLUE
#define RS6000_CALL_GLUE "nop"
+#undef RS6000_MCOUNT
+#define RS6000_MCOUNT ".__mcount"
+
+/* FP save and restore routines. */
+#undef SAVE_FP_PREFIX
+#define SAVE_FP_PREFIX "._savef"
+#undef SAVE_FP_SUFFIX
+#define SAVE_FP_SUFFIX ""
+#undef RESTORE_FP_PREFIX
+#define RESTORE_FP_PREFIX "._restf"
+#undef RESTORE_FP_SUFFIX
+#define RESTORE_FP_SUFFIX ""
+
/* Dwarf2 debugging. */
-#undef PREFERRED_DEBUGGING_TYPE
+#undef PREFERRED_DEBUGGING_TYPE
#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
/* This macro gets just the user-specified name
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 112de7f..8c7ba33 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -2481,7 +2481,7 @@ do { \
} \
else \
{ \
- fprintf (FILE, "\t%s ", DOUBLE_INT_ASM_OP); \
+ fprintf (FILE, "%s", DOUBLE_INT_ASM_OP); \
output_addr_const (FILE, (VALUE)); \
putc ('\n', FILE); \
} \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 0a63786..2851d70 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -1589,4 +1589,4 @@ ncrtn.o%s"
: DW_EH_PE_absptr)
#define EXCEPTION_SECTION readonly_data_section
-#define DOUBLE_INT_ASM_OP ".quad"
+#define DOUBLE_INT_ASM_OP "\t.quad\t"
diff --git a/gcc/config/rs6000/xcoff.h b/gcc/config/rs6000/xcoff.h
index 4d0a7fd..f7d6c5f 100644
--- a/gcc/config/rs6000/xcoff.h
+++ b/gcc/config/rs6000/xcoff.h
@@ -439,7 +439,7 @@ toc_section () \
} while (0)
/* Used by definition of ASM_OUTPUT_DOUBLE_INT */
-#define DOUBLE_INT_ASM_OP ".llong"
+#define DOUBLE_INT_ASM_OP "\t.llong "
/* This says how to output an assembler line
to define a local common symbol.