Commit 71c061e6 by David Edelsohn Committed by David Edelsohn

linux64.h (LINK_OS_LINUX_SPEC): Look in /lib64.

	* config/rs6000/linux64.h (LINK_OS_LINUX_SPEC): Look in /lib64.
	({STARTFILE,ENDFILE}_LINUX_SPEC): Define.

	* config/rs6000/sysv4.h (ENDFILE_SPEC): Add crtsaveres.o.
	* config/rs6000/eabi.asm: Remove ABI save restore routines.
	* config/rs6000/t-ppccomm: Build crtsavres.o.
	* config/rs6000/crtsavres.asm: New file.

From-SVN: r49873
parent 3a7731fd
2002-02-19 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/linux64.h (LINK_OS_LINUX_SPEC): Look in /lib64.
({STARTFILE,ENDFILE}_LINUX_SPEC): Define.
* config/rs6000/sysv4.h (ENDFILE_SPEC): Add crtsaveres.o.
* config/rs6000/eabi.asm: Remove ABI save restore routines.
* config/rs6000/t-ppccomm: Build crtsavres.o.
* config/rs6000/crtsavres.asm: New file.
2002-02-19 Philip Blundell <philb@gnu.org>
* config/arm/arm.c (use_return_insn): Don't reject interrupt
......
......@@ -87,10 +87,6 @@ Boston, MA 02111-1307, USA. */
#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
#define FP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) == 62 || (FIRST_REG) == 63)
/* 64-bit PowerPC Linux always has GPR13 fixed. */
#define FIXED_R13 1
......@@ -142,9 +138,29 @@ Boston, MA 02111-1307, USA. */
#define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
#undef LINK_OS_LINUX_SPEC
#ifndef CROSS_COMPILE
#define LINK_OS_LINUX_SPEC "-m elf64ppc %{!shared: %{!static: \
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
%{!dynamic-linker:-dynamic-linker /lib64/ld.so.1}}}"
#else
#define LINK_OS_LINUX_SPEC "-m elf64ppc %{!shared: %{!static: \
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker ld.so.1}}}"
#endif
#ifndef CROSS_COMPILE
#undef STARTFILE_LINUX_SPEC
#define STARTFILE_LINUX_SPEC "\
%{!shared: %{pg:/usr/lib64/gcrt1.o%s} %{!pg:%{p:/usr/lib64/gcrt1.o%s} \
%{!p:/usr/lib64/crt1.o%s}}} /usr/lib64/crti.o%s \
%{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
#endif
#ifndef CROSS_COMPILE
#undef ENDFILE_LINUX_SPEC
#define ENDFILE_LINUX_SPEC "\
%{!shared:crtend.o%s} %{shared:crtendS.o%s} /usr/lib64/crtn.o%s"
#endif
#undef TOC_SECTION_ASM_OP
#define TOC_SECTION_ASM_OP "\t.section\t\".toc\",\"aw\""
......
......@@ -1107,7 +1107,7 @@ do { \
/* Override svr4.h definition. */
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "\
#define ENDFILE_SPEC "crtsavres.o%s \
%{mads: %(endfile_ads)} \
%{myellowknife: %(endfile_yellowknife)} \
%{mmvme: %(endfile_mvme)} \
......
......@@ -40,7 +40,8 @@ INSTALL_LIBGCC = install-multilib
EXTRA_MULTILIB_PARTS = crtbegin$(objext) crtend$(objext) \
crtbeginS$(objext) crtendS$(objext) crtbeginT$(objext) \
ecrti$(objext) ecrtn$(objext) \
ncrti$(objext) ncrtn$(objext)
ncrti$(objext) ncrtn$(objext) \
crtsavres$(objext)
# We build {e,n}crti.o and {e,n}crtn.o, which serve to add begin and
# end labels to all of the special sections used when we link using gcc.
......@@ -58,6 +59,9 @@ ncrti.S: $(srcdir)/config/rs6000/sol-ci.asm
ncrtn.S: $(srcdir)/config/rs6000/sol-cn.asm
cat $(srcdir)/config/rs6000/sol-cn.asm >ncrtn.S
crtsavres.S: $(srcdir)/config/rs6000/crtsavres.asm
cat $(srcdir)/config/rs6000/crtsavres.asm >crtsavres.S
# Build multiple copies of ?crt{i,n}.o, one for each target switch.
$(T)ecrti$(objext): ecrti.S
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c ecrti.S -o $(T)ecrti$(objext)
......@@ -71,6 +75,9 @@ $(T)ncrti$(objext): ncrti.S
$(T)ncrtn$(objext): ncrtn.S
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c ncrtn.S -o $(T)ncrtn$(objext)
$(T)crtsavres$(objext): crtsavres.S
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c crtsavres.S -o $(T)crtsavres$(objext)
# It is important that crtbegin.o, etc., aren't surprised by stuff in .sdata.
CRTSTUFF_T_CFLAGS = -msdata=none
# Make sure crt*.o are built with -fPIC even if configured with
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment