* config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
authorRichard Henderson <rth@redhat.com>
Mon, 11 Jun 2001 16:21:52 +0000 (09:21 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Mon, 11 Jun 2001 16:21:52 +0000 (09:21 -0700)
From-SVN: r43194

gcc/ChangeLog
gcc/config/alpha/osf.h

index c1c52d0c09f1ba56f26d68139e6eea85ca9a409c..cac511cc39d55762d9320e593e628288922713a3 100644 (file)
@@ -1,3 +1,7 @@
+2001-06-11  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
+
 2001-06-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * configure.in: Align --help messages.
index 7f49585f23644d73817b353df4097771de59bce1..1aecf33ad3916841357312d71099fd2301ab8909 100644 (file)
@@ -57,11 +57,13 @@ Boston, MA 02111-1307, USA.  */
 
 /* Pass "-G 8" to ld because Alpha's CC does.  Pass -O3 if we are
    optimizing, -O1 if we are not.  Pass -shared, -non_shared or
-   -call_shared as appropriate.  Also pass -pg.  */
+   -call_shared as appropriate.  Pass -hidden_symbol so that our
+   constructor and call-frame data structures are not accidentally
+   overridden.  */
 #define LINK_SPEC  \
   "-G 8 %{O*:-O3} %{!O*:-O1} %{static:-non_shared} \
-   %{!static:%{shared:-shared} %{!shared:-call_shared}} %{pg} %{taso} \
-   %{rpath*}"
+   %{!static:%{shared:-shared -hidden_symbol _GLOBAL_*} \
+   %{!shared:-call_shared}} %{pg} %{taso} %{rpath*}"
 
 #define STARTFILE_SPEC  \
   "%{!shared:%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}}"