diff options
author | Jason Merrill <jason@yorick.cygnus.com> | 1998-10-13 11:50:20 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 1998-10-13 07:50:20 -0400 |
commit | 48ad5afd7d544281c294b6f7dba498ec88ab11eb (patch) | |
tree | ad6585dad7a4d43a3a4bc3db45e990324c092a5c | |
parent | 0a65887a3817cedf471aa17c7ae25ac7996abac1 (diff) | |
download | gcc-48ad5afd7d544281c294b6f7dba498ec88ab11eb.zip gcc-48ad5afd7d544281c294b6f7dba498ec88ab11eb.tar.gz gcc-48ad5afd7d544281c294b6f7dba498ec88ab11eb.tar.bz2 |
iris6.h (ASM_OUTPUT_WEAK_ALIAS): Call ASM_GLOBALIZE_LABEL.
* mips/iris6.h (ASM_OUTPUT_WEAK_ALIAS): Call ASM_GLOBALIZE_LABEL.
* varasm.c (assemble_start_function et al): Don't call
ASM_GLOBALIZE_LABEL for weak symbols.
From-SVN: r23051
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/mips/iris6.h | 1 | ||||
-rw-r--r-- | gcc/varasm.c | 10 |
3 files changed, 13 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 077fbde..0adf887 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Tue Oct 13 11:49:14 1998 Jason Merrill <jason@yorick.cygnus.com> + + * mips/iris6.h (ASM_OUTPUT_WEAK_ALIAS): Call ASM_GLOBALIZE_LABEL. + * varasm.c (assemble_start_function et al): Don't call + ASM_GLOBALIZE_LABEL for weak symbols. + Tue Oct 13 11:37:45 1998 Nick Clifton <nickc@cygnus.com> * cse.c (equiv_constant): Check for NULL return from diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h index 30e1860..00590132 100644 --- a/gcc/config/mips/iris6.h +++ b/gcc/config/mips/iris6.h @@ -187,6 +187,7 @@ Boston, MA 02111-1307, USA. */ #define ASM_OUTPUT_WEAK_ALIAS(FILE,NAME,VALUE) \ do { \ + ASM_GLOBALIZE_LABEL (FILE, NAME); \ fputs ("\t.weakext\t", FILE); \ assemble_name (FILE, NAME); \ if (VALUE) \ diff --git a/gcc/varasm.c b/gcc/varasm.c index 8da99da..d9e5261 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -1005,11 +1005,12 @@ assemble_start_function (decl, fnname) strcpy (*name, p); } - ASM_GLOBALIZE_LABEL (asm_out_file, fnname); #ifdef ASM_WEAKEN_LABEL if (DECL_WEAK (decl)) ASM_WEAKEN_LABEL (asm_out_file, fnname); + else #endif + ASM_GLOBALIZE_LABEL (asm_out_file, fnname); } /* Do any machine/system dependent processing of the function name */ @@ -1425,11 +1426,12 @@ assemble_variable (decl, top_level, at_end, dont_output_data) /* First make the assembler name(s) global if appropriate. */ if (TREE_PUBLIC (decl) && DECL_NAME (decl)) { - ASM_GLOBALIZE_LABEL (asm_out_file, name); #ifdef ASM_WEAKEN_LABEL if (DECL_WEAK (decl)) ASM_WEAKEN_LABEL (asm_out_file, name); + else #endif + ASM_GLOBALIZE_LABEL (asm_out_file, name); } #if 0 for (d = equivalents; d; d = TREE_CHAIN (d)) @@ -4259,7 +4261,6 @@ weak_finish () struct weak_syms *t; for (t = weak_decls; t; t = t->next) { - ASM_GLOBALIZE_LABEL (asm_out_file, t->name); ASM_WEAKEN_LABEL (asm_out_file, t->name); if (t->value) ASM_OUTPUT_DEF (asm_out_file, t->name, t->value); @@ -4282,11 +4283,12 @@ assemble_alias (decl, target) if (TREE_PUBLIC (decl)) { - ASM_GLOBALIZE_LABEL (asm_out_file, name); #ifdef ASM_WEAKEN_LABEL if (DECL_WEAK (decl)) ASM_WEAKEN_LABEL (asm_out_file, name); + else #endif + ASM_GLOBALIZE_LABEL (asm_out_file, name); } ASM_OUTPUT_DEF (asm_out_file, name, IDENTIFIER_POINTER (target)); |