[13/25] Specs cleanup: MIPS -bestGnum -no_archive -exact_version

Submitted by Joseph S. Myers on Jan. 14, 2011, 12:11 a.m.

Details

Message ID Pine.LNX.4.64.1101140010390.6059@digraph.polyomino.org.uk
State New
Headers show

Commit Message

Joseph S. Myers Jan. 14, 2011, 12:11 a.m.
Various MIPS targets have specs passing options -bestGnum -no_archive
-exact_version to the linker.  The GNU linker has no such options, so
these specs are useless whenever the GNU linker is used, which covers
all MIPS targets except IRIX.  (I don't know if the IRIX linker has
such options.)  This patch removes these specs for all non-IRIX
targets.  OK to commit?

2011-01-13  Joseph Myers  <joseph@codesourcery.com>

	* config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
	%{no_archive} %{exact_version}.
	* config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
	* config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
	%{no_archive} %{exact_version}.
	* config/mips/openbsd.h (LINK_SPEC): Likewise.
	* config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
	* config/mips/vxworks.h: Likewise.

Patch hide | download patch | download mbox

diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/linux64.h gcc-mainline/gcc/config/mips/linux64.h
--- gcc-mainline-12/gcc/config/mips/linux64.h	2011-01-12 14:07:22.000000000 -0800
+++ gcc-mainline/gcc/config/mips/linux64.h	2011-01-12 14:28:26.000000000 -0800
@@ -47,8 +47,8 @@  along with GCC; see the file COPYING3.  
 #undef LINK_SPEC
 #define LINK_SPEC "\
 %{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} %{mips4} \
-%{bestGnum} %{shared} %{non_shared} \
-%{call_shared} %{no_archive} %{exact_version} \
+%{shared} %{non_shared} \
+%{call_shared} \
  %(endian_spec) \
   %{!shared: \
     %{!static: \
diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/mips.h gcc-mainline/gcc/config/mips/mips.h
--- gcc-mainline-12/gcc/config/mips/mips.h	2011-01-12 14:13:10.000000000 -0800
+++ gcc-mainline/gcc/config/mips/mips.h	2011-01-12 14:28:43.000000000 -0800
@@ -1145,14 +1145,12 @@  enum mips_code_readable_setting {
 %(subtarget_asm_spec)"
 
 /* Extra switches sometimes passed to the linker.  */
-/* ??? The bestGnum will never be passed to the linker, because the gcc driver
-  will interpret it as a -b option.  */
 
 #ifndef LINK_SPEC
 #define LINK_SPEC "\
 %(endian_spec) \
 %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32*} %{mips64*} \
-%{bestGnum} %{shared} %{non_shared}"
+%{shared} %{non_shared}"
 #endif  /* LINK_SPEC defined */
 
 
diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/netbsd.h gcc-mainline/gcc/config/mips/netbsd.h
--- gcc-mainline-12/gcc/config/mips/netbsd.h	2010-12-06 06:40:24.000000000 -0800
+++ gcc-mainline/gcc/config/mips/netbsd.h	2011-01-12 14:29:00.000000000 -0800
@@ -148,7 +148,7 @@  along with GCC; see the file COPYING3.  
    %{EB:-m elf32bmip} \
    %(endian_spec) \
    %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips32r2} %{mips64} \
-   %{bestGnum} %{call_shared} %{no_archive} %{exact_version} \
+   %{call_shared} \
    %(netbsd_link_spec)"
 
 #define NETBSD_ENTRY_POINT "__start"
diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/openbsd.h gcc-mainline/gcc/config/mips/openbsd.h
--- gcc-mainline-12/gcc/config/mips/openbsd.h	2010-12-09 05:38:56.000000000 -0800
+++ gcc-mainline/gcc/config/mips/openbsd.h	2011-01-12 14:29:13.000000000 -0800
@@ -77,8 +77,8 @@  along with GCC; see the file COPYING3.  
 #undef LINK_SPEC
 #define LINK_SPEC \
   "%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
-   %{bestGnum} %{shared} %{non_shared} \
-   %{call_shared} %{no_archive} %{exact_version} \
+   %{shared} %{non_shared} \
+   %{call_shared} \
    %{!shared: %{!non_shared: %{!call_shared: -non_shared}}} \
    -dynamic-linker /usr/libexec/ld.so \
    %{!nostdlib:%{!r:%{!e*:-e __start}}} -dc -dp \
diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/sde.h gcc-mainline/gcc/config/mips/sde.h
--- gcc-mainline-12/gcc/config/mips/sde.h	2010-11-19 13:26:11.000000000 -0800
+++ gcc-mainline/gcc/config/mips/sde.h	2011-01-12 14:29:25.000000000 -0800
@@ -59,7 +59,6 @@  along with GCC; see the file COPYING3.  
 #define LINK_SPEC "\
 %(endian_spec) \
 %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32*} %{mips64*} \
-%{bestGnum} \
 %{shared} %{non_shared} %{call_shared} \
 %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \
 %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip} \
diff -rupN --exclude=.svn gcc-mainline-12/gcc/config/mips/vxworks.h gcc-mainline/gcc/config/mips/vxworks.h
--- gcc-mainline-12/gcc/config/mips/vxworks.h	2010-12-20 13:11:12.000000000 -0800
+++ gcc-mainline/gcc/config/mips/vxworks.h	2011-01-12 14:31:48.000000000 -0800
@@ -35,8 +35,7 @@  along with GCC; see the file COPYING3.  
 #undef LINK_SPEC
 #define LINK_SPEC "\
 %(endian_spec) \
-%{!G:-G 0} %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips64} \
-%{bestGnum}" \
+%{!G:-G 0} %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips64} " \
 VXWORKS_LINK_SPEC
 
 #undef  LIB_SPEC