aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Ellcey <sje@cup.hp.com>2002-12-11 20:41:43 +0000
committerSteve Ellcey <sje@gcc.gnu.org>2002-12-11 20:41:43 +0000
commit9a3873b48fc6ff48d136c22fd05ef94366956123 (patch)
tree6fb25e06419b5a22c541753382ca730b32586cad
parent9a4816af1e99c66823fe71c67f60fe3b7f61b37d (diff)
downloadgcc-9a3873b48fc6ff48d136c22fd05ef94366956123.zip
gcc-9a3873b48fc6ff48d136c22fd05ef94366956123.tar.gz
gcc-9a3873b48fc6ff48d136c22fd05ef94366956123.tar.bz2
ia64.c (ia64_hpux_asm_file_end): Don't send stripped name to globalize_label or assemble_name.
* config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped name to globalize_label or assemble_name. From-SVN: r60046
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.c17
2 files changed, 15 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f2f70b0a..7b4b91d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-12-09 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
+ name to globalize_label or assemble_name.
+
Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
* sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index daddb86..68bbbc8 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -8141,16 +8141,19 @@ ia64_hpux_asm_file_end (file)
{
while (extern_func_head)
{
- const char *const real_name =
- (* targetm.strip_name_encoding) (extern_func_head->name);
- tree decl = get_identifier (real_name);
+ char *real_name;
+ tree decl;
- if (decl && ! TREE_ASM_WRITTEN (decl) && TREE_SYMBOL_REFERENCED (decl))
+ real_name = (* targetm.strip_name_encoding) (extern_func_head->name);
+ tree decl = maybe_get_identifier (real_name);
+
+ if (!decl || ! TREE_ASM_WRITTEN (decl) && TREE_SYMBOL_REFERENCED (decl))
{
- TREE_ASM_WRITTEN (decl) = 1;
- (*targetm.asm_out.globalize_label) (file, real_name);
+ if (decl)
+ TREE_ASM_WRITTEN (decl) = 1;
+ (*targetm.asm_out.globalize_label) (file, extern_func_head->name);
fprintf (file, "%s", TYPE_ASM_OP);
- assemble_name (file, real_name);
+ assemble_name (file, extern_func_head->name);
putc (',', file);
fprintf (file, TYPE_OPERAND_FMT, "function");
putc ('\n', file);