This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Dwarf2 question
> It would make sense to make mem_loc_descriptor do:
>
> case LO_SUM:
> rtl = XEXP (rtl, 1);
> /* FALLTHRU */
>
> case LABEL_REF:
> case CONST:
> case SYMBOL_REF:
> ...
>
> Alternately, do this in targetm.delegitimize_address.
Thanks. Since the problem shows up on Alpha too, I'm leaning toward your
first suggestion.
Falk, is the attached patch (against 3.3) sufficient to fix PR target/10084?
--
Eric Botcazou
Index: dwarf2out.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/dwarf2out.c,v
retrieving revision 1.390.2.3
diff -u -p -r1.390.2.3 dwarf2out.c
--- dwarf2out.c 15 Mar 2003 17:00:09 -0000 1.390.2.3
+++ dwarf2out.c 27 Mar 2003 07:37:21 -0000
@@ -8177,6 +8177,11 @@ mem_loc_descriptor (rtl, mode)
add_loc_descr (&mem_loc_result, new_loc_descr (DW_OP_deref, 0, 0));
break;
+ case LO_SUM:
+ rtl = XEXP (rtl, 1);
+
+ /* ... fall through ... */
+
case LABEL_REF:
/* Some ports can transform a symbol ref into a label ref, because
the symbol ref is too far away and has to be dumped into a constant