From e6c8ea01d4efd76dc57021b79f49b3d8e73bb0f8 Mon Sep 17 00:00:00 2001
From: rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed, 7 Apr 1999 03:19:35 +0000
Subject: [PATCH]         * alpha.c (alpha_end_function): Don't flag weak
 functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26233 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog            | 8 ++++++++
 gcc/config/alpha/alpha.c | 6 +++---
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ef262741d52f..e13b8ee12929 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Wed Apr  7 03:16:45 1999  Richard Henderson  <rth@cygnus.com>
+
+	* alpha.c (reg_no_subreg_operand): New function.
+	* alpha.h (PREDICATE_CODES): Add it.
+	* alpha.md (floatdi?f patterns): Use it for op1.
+
+	* alpha.c (alpha_end_function): Don't flag weak functions.
+
 Wed Apr  7 02:11:55 1999  Richard Henderson  <rth@cygnus.com>
 
 	* expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 39e11f7292c6..85658361103f 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -3948,10 +3948,10 @@ alpha_end_function (file, fnname, decl)
 
      Don't do this for global functions in object files destined for a
      shared library because the function may be overridden by the application
-     or other libraries.
-     ??? Is this just ELF?  */
+     or other libraries.  Similarly, don't do this for weak functions.  */
 
-  if (!flag_pic || !TREE_PUBLIC (current_function_decl))
+  if (!DECL_WEAK (current_function_decl)
+      && (!flag_pic || !TREE_PUBLIC (current_function_decl)))
     SYMBOL_REF_FLAG (XEXP (DECL_RTL (current_function_decl), 0)) = 1;
 }
 
-- 
GitLab