aboutsummaryrefslogtreecommitdiff
path: root/gcc/crtstuff.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard@codesourcery.com>2007-01-18 19:09:59 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2007-01-18 19:09:59 +0000
commitabe92a04b69b6598609da0f1d334ac4a01f7edf5 (patch)
tree4e7e6f3d2976224ac87a3cad06ca119d66f3f076 /gcc/crtstuff.c
parent78218d899779528fc2fe6ec5c01ce8b22f2fb404 (diff)
downloadgcc-abe92a04b69b6598609da0f1d334ac4a01f7edf5.zip
gcc-abe92a04b69b6598609da0f1d334ac4a01f7edf5.tar.gz
gcc-abe92a04b69b6598609da0f1d334ac4a01f7edf5.tar.bz2
config.gcc (m68k-*-uclinux*): Add flat.h to $tm_file.
gcc/ * config.gcc (m68k-*-uclinux*): Add flat.h to $tm_file. * config/flat.h: New file. * crtstuff.c (USE_PT_GNU_EH_FRAME): Don't define if OBJECT_FORMAT_FLAT. * config/m68k/m68k.h (ASM_PREFERRED_EH_DATA_FORMAT): Do not use indirect references for -msep-data or -mid-shared-library. Do not use PC-relative code addresses either. * config/m68k/m68k.c (override_options): Restrict -fPIC error to -mpcrel. * config/m68k/uclinux.h (STARTFILE_SPEC): Define. Use Scrt1.o for shared libraries and crt1.o for executables. Use crti.o and crtbegin.o. (ENDFILE_SPEC): Use crtend.o and crtn.o. (LIB_SPEC): Suppress -Rlibc.gdb if -static-libc is given. Do not add -elf2flt or -shared-lib-id options here. (LINK_SPEC): Define. Pass -elf2flt if no -elf2flt option is given. Pass -shared-lib-id if -mid-shared-library, taking the library identifier from -mshared-library-id if given, otherwise defaulting to 0. (EH_FRAME_IN_DATA_SECTION): Do not undefine. (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Likewise. (TARGET_OS_CPP_BUILTINS): Define __GXX_MERGED_TYPEINFO_NAMES=0 and __GXX_TYPEINFO_EQUALITY_INLINE=0 if -mid-shared-library. (DRIVER_SELF_SPECS): Map unadorned PIC options to -msep-data. * config/m68k/t-uclinux (EXTRA_MULTILIB_PARTS): Add crtbegin.o and crtend.o. * config/m68k/lb1sf68.asm (PICCALL): Use an lea and pc-relative jump sequence for ISA A and ISA A+. (PICJUMP): Likewise. From-SVN: r120912
Diffstat (limited to 'gcc/crtstuff.c')
-rw-r--r--gcc/crtstuff.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/crtstuff.c b/gcc/crtstuff.c
index 8fdc021..e847ad0 100644
--- a/gcc/crtstuff.c
+++ b/gcc/crtstuff.c
@@ -86,7 +86,9 @@ call_ ## FUNC (void) \
}
#endif
-#if defined(OBJECT_FORMAT_ELF) && defined(HAVE_LD_EH_FRAME_HDR) \
+#if defined(OBJECT_FORMAT_ELF) \
+ && !defined(OBJECT_FORMAT_FLAT) \
+ && defined(HAVE_LD_EH_FRAME_HDR) \
&& !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \
&& defined(__GLIBC__) && __GLIBC__ >= 2
#include <link.h>