aboutsummaryrefslogtreecommitdiff
path: root/gcc/varasm.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2003-08-01 14:51:13 -0700
committerRichard Henderson <rth@gcc.gnu.org>2003-08-01 14:51:13 -0700
commit75c209808126e1c2ef4a5c3ce7c25700416d078f (patch)
tree09777e2a3ebda4ff012aec58bf5140c64a6bbe37 /gcc/varasm.c
parentc197e3066130fb10da0c2f58a3a7fff3ab707487 (diff)
downloadgcc-75c209808126e1c2ef4a5c3ce7c25700416d078f.zip
gcc-75c209808126e1c2ef4a5c3ce7c25700416d078f.tar.gz
gcc-75c209808126e1c2ef4a5c3ce7c25700416d078f.tar.bz2
system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
* system.h: Poison ASM_SIMPLIFY_DWARF_ADDR. * varasm.c (lookup_constant_def): New function. * rtl.h (lookup_constant_def): Declare it. * dwarf2out.c (loc_descriptor_from_tree): Use it. Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR. From-SVN: r70072
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r--gcc/varasm.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 63ba1bd..512bc33 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -2596,6 +2596,21 @@ notice_rtl_inlining_of_deferred_constant (void)
{
n_deferred_constants++;
}
+
+/* Look up EXP in the table of constant descriptors. Return the rtl
+ if it has been emitted, else null. */
+
+rtx
+lookup_constant_def (tree exp)
+{
+ struct constant_descriptor_tree *desc;
+ struct constant_descriptor_tree key;
+
+ key.value = exp;
+ desc = htab_find (const_desc_htab, &key);
+
+ return (desc ? desc->rtl : NULL_RTX);
+}
/* Used in the hash tables to avoid outputting the same constant
twice. Unlike 'struct constant_descriptor_tree', RTX constants