diff options
author | Richard Henderson <rth@gcc.gnu.org> | 2001-11-09 15:18:56 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-11-09 15:18:56 -0800 |
commit | 1ee9fb202a1be3e3259935c243242fa6ffa5f62d (patch) | |
tree | dbfb4fbeb6da1e5284896f2bbe7a6468b31f38fa | |
parent | 1e5cf79655d0915ae27309341b62eafa3f67dab1 (diff) | |
download | gcc-1ee9fb202a1be3e3259935c243242fa6ffa5f62d.zip gcc-1ee9fb202a1be3e3259935c243242fa6ffa5f62d.tar.gz gcc-1ee9fb202a1be3e3259935c243242fa6ffa5f62d.tar.bz2 |
dwarf2asm.c (dw2_force_const_mem): Invoke STRIP_NAME_ENCODING on the symbol string.
* dwarf2asm.c (dw2_force_const_mem): Invoke STRIP_NAME_ENCODING
on the symbol string.
From-SVN: r46906
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/dwarf2asm.c | 13 |
2 files changed, 14 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9a04b10..4a8a99e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-11-09 Richard Henderson <rth@redhat.com> + + * dwarf2asm.c (dw2_force_const_mem): Invoke STRIP_NAME_ENCODING + on the symbol string. + 2001-11-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * pa/elf.h (ASM_DECLARE_FUNCTION_NAME, @@ -37,7 +42,7 @@ Fri Nov 9 17:51:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> (FIXED_REGISTERS): VRSAVE is fixed. (CALL_USED_REGISTERS): VRSAVE is call used. -2001-11-08 Jason Eckhardt <jle@rice.edu> +2001-11-09 Jason Eckhardt <jle@rice.edu> * config/mips/mips.c (mips_output_conditional_branch): Do not hard code the branch target as ".+16/.+12", but rather use labels. diff --git a/gcc/dwarf2asm.c b/gcc/dwarf2asm.c index ad5ecc2..05a1ed8 100644 --- a/gcc/dwarf2asm.c +++ b/gcc/dwarf2asm.c @@ -763,6 +763,7 @@ dw2_force_const_mem (x) rtx x; { splay_tree_node node; + const char *str; tree decl; if (! indirect_pool) @@ -773,7 +774,9 @@ dw2_force_const_mem (x) if (GET_CODE (x) != SYMBOL_REF) abort (); - node = splay_tree_lookup (indirect_pool, (splay_tree_key) XSTR (x, 0)); + + STRIP_NAME_ENCODING (str, XSTR (x, 0)); + node = splay_tree_lookup (indirect_pool, (splay_tree_key) str); if (node) decl = (tree) node->value; else @@ -782,9 +785,9 @@ dw2_force_const_mem (x) if (USE_LINKONCE_INDIRECT) { - char *ref_name = alloca (strlen (XSTR (x, 0)) + sizeof "DW.ref."); + char *ref_name = alloca (strlen (str) + sizeof "DW.ref."); - sprintf (ref_name, "DW.ref.%s", XSTR (x, 0)); + sprintf (ref_name, "DW.ref.%s", str); id = get_identifier (ref_name); decl = build_decl (VAR_DECL, id, ptr_type_node); DECL_ARTIFICIAL (decl) = 1; @@ -804,11 +807,11 @@ dw2_force_const_mem (x) DECL_INITIAL (decl) = decl; } - id = maybe_get_identifier (XSTR (x, 0)); + id = maybe_get_identifier (str); if (id) TREE_SYMBOL_REFERENCED (id) = 1; - splay_tree_insert (indirect_pool, (splay_tree_key) XSTR (x, 0), + splay_tree_insert (indirect_pool, (splay_tree_key) str, (splay_tree_value) decl); } |