[ColdFire 45/63] Set TARGET_ASM_FILE_START_APP_OFF to false for GNU/Linux

Richard Sandiford richard@codesourcery.com
Wed Jan 10 12:00:00 GMT 2007


The m68k port defaults to "# APP OFF".  However, it can't compile glibc
in that state, because glibc uses comments to hide section attributes.

TARGET_ASM_FILE_START_APP_OFF is already an OS-style target hook --
the default is protected by an #ifdef guard -- so this patch simply
moves the m68k definition from m68k.c to m68k.h and overrides it
in linux.h.

Richard


gcc/
	* config/m68k/m68k.h (TARGET_ASM_FILE_START_APP_OFF): Define.
	* config/m68k/linux.h (TARGET_ASM_FILE_START_APP_OFF): Override.
	* config/m68k/m68k.c (TARGET_ASM_FILE_START_APP_OFF): Delete.

Index: gcc/config/m68k/m68k.h
===================================================================
--- gcc/config/m68k/m68k.h	2007-01-09 15:02:18.000000000 +0000
+++ gcc/config/m68k/m68k.h	2007-01-09 15:02:20.000000000 +0000
@@ -936,6 +936,7 @@ #define REGISTER_PREFIX ""
 #define LOCAL_LABEL_PREFIX ""
 #define USER_LABEL_PREFIX "_"
 #define IMMEDIATE_PREFIX "#"
+#define TARGET_ASM_FILE_START_APP_OFF true
 
 #define REGISTER_NAMES \
 {REGISTER_PREFIX"d0", REGISTER_PREFIX"d1", REGISTER_PREFIX"d2",	\
Index: gcc/config/m68k/linux.h
===================================================================
--- gcc/config/m68k/linux.h	2007-01-09 15:02:13.000000000 +0000
+++ gcc/config/m68k/linux.h	2007-01-09 15:02:20.000000000 +0000
@@ -229,3 +229,8 @@ #define CLEAR_INSN_CACHE(BEG, END)					\
 }
 
 #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+
+/* glibc uses comments to hide section attributes.  So setting
+   ASM_FILE_START_APP_OFF breaks it.  */
+#undef TARGET_ASM_FILE_START_APP_OFF
+#define TARGET_ASM_FILE_START_APP_OFF false
Index: gcc/config/m68k/m68k.c
===================================================================
--- gcc/config/m68k/m68k.c	2007-01-09 15:02:20.000000000 +0000
+++ gcc/config/m68k/m68k.c	2007-01-09 15:02:20.000000000 +0000
@@ -193,9 +193,6 @@ #define TARGET_ASM_OUTPUT_MI_THUNK m68k_
 #undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
 #define TARGET_ASM_CAN_OUTPUT_MI_THUNK default_can_output_mi_thunk_no_vcall
 
-#undef TARGET_ASM_FILE_START_APP_OFF
-#define TARGET_ASM_FILE_START_APP_OFF true
-
 #undef TARGET_DEFAULT_TARGET_FLAGS
 #define TARGET_DEFAULT_TARGET_FLAGS MASK_STRICT_ALIGNMENT
 #undef TARGET_HANDLE_OPTION



More information about the Gcc-patches mailing list