diff options
author | amodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-01 06:00:38 +0000 |
---|---|---|
committer | amodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-01 06:00:38 +0000 |
commit | ee0125fb19f196b322500085c0c0951c1ab4332c (patch) | |
tree | 146341b9078d1b8ac0de9b80ea4f78629e3a7048 /gcc/c-pragma.h | |
parent | 4a000b20819413985811bcdbeb5264dfa1381632 (diff) | |
download | gcc-ee0125fb19f196b322500085c0c0951c1ab4332c.tar.gz |
* 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
Diffstat (limited to 'gcc/c-pragma.h')
-rw-r--r-- | gcc/c-pragma.h | 5 |
1 files changed, 2 insertions, 3 deletions
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 |