From ee0125fb19f196b322500085c0c0951c1ab4332c Mon Sep 17 00:00:00 2001 From: amodra Date: Fri, 1 Mar 2002 06:00:38 +0000 Subject: * doc/tm.texi (ASM_WEAKEN_DECL): Document. (ASM_WEAKEN_LABEL): Mention ASM_WEAKEN_DECL. (SUPPORTS_WEAK): Likewise. * output.h (add_weak): Add tree param. * varasm.c (add_weak): Likewise. Save decl. (struct weak_syms): Add decl field. (mark_weak_decls): New function. (init_varasm_once): ggc_add_root mark_weak_decls. (assemble_start_function): Use ASM_WEAKEN_DECL. (assemble_variable): Likewise. (assemble_alias): Likewise. (declare_weak): Pass decl to add_weak. (weak_finish): Use ASM_WEAKEN_DECL. Try to find decl. (remove_from_pending_weak_list): Declare and define for ASM_WEAKEN_DECL. * c-pragma.c (handle_pragma_weak): Adjust add_weak call. * c-pragma.h (HANDLE_PRAGMA_WEAK): Define if ASM_WEAKEN_DECL too. * defaults.h (SUPPORTS_WEAK): Likewise. * config/rs6000/linux64.h (ASM_DECLARE_FUNCTION_NAME): Don't emit .weak for code sym. Do emit .size for descriptor sym. (ASM_DECLARE_FUNCTION_SIZE): Define. * config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Define. (ASM_OUTPUT_DEF_FROM_DECLS): Don't emit .weak here. Don't output .lglobl unless TARGET_XCOFF. Formatting fixes. * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't emit .weak for code sym. (HANDLE_PRAGMA_WEAK): Remove. (ASM_WEAKEN_LABEL): Remove. * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50181 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/c-pragma.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gcc/c-pragma.h') diff --git a/gcc/c-pragma.h b/gcc/c-pragma.h index ff00f3250f8..8d0c4f58501 100644 --- a/gcc/c-pragma.h +++ b/gcc/c-pragma.h @@ -23,9 +23,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define GCC_C_PRAGMA_H #ifdef HANDLE_SYSV_PRAGMA -/* Support #pragma weak iff ASM_WEAKEN_LABEL and ASM_OUTPUT_WEAK_ALIAS are - defined. */ -#if defined (ASM_WEAKEN_LABEL) && defined (ASM_OUTPUT_WEAK_ALIAS) +#if ((defined (ASM_WEAKEN_LABEL) && defined (ASM_OUTPUT_WEAK_ALIAS)) \ + || defined (ASM_WEAKEN_DECL)) #define HANDLE_PRAGMA_WEAK SUPPORTS_WEAK #endif -- cgit v1.2.1