diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-11-09 23:18:56 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-11-09 23:18:56 +0000 |
commit | dc4303d7dc07bfa011764ace2c338f9fa059cbe7 (patch) | |
tree | dbfb4fbeb6da1e5284896f2bbe7a6468b31f38fa | |
parent | b810486ae5ee665b6e112a85eaeddb65d50feaf9 (diff) | |
download | ppe42-gcc-dc4303d7dc07bfa011764ace2c338f9fa059cbe7.tar.gz ppe42-gcc-dc4303d7dc07bfa011764ace2c338f9fa059cbe7.zip |
* dwarf2asm.c (dw2_force_const_mem): Invoke STRIP_NAME_ENCODING
on the symbol string.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46906 138bc75d-0d04-0410-961f-82ee72b054a4
-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 9a04b108ddf..4a8a99e6950 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 ad5ecc24367..05a1ed81487 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); } |