This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Add CONSTRUCTOR case to loc_descriptor_from_tree in dwarf2out.c
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: graham dot stott at btinternet dot com
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 31 Jul 03 19:04:50 EDT
- Subject: Re: Add CONSTRUCTOR case to loc_descriptor_from_tree in dwarf2out.c
> + rtx rtl = TREE_CST_RTL (loc);
^^^^^^^^^^^^ This is no longer defined on mainlined
Sorry. Fixed this way:
2003-07-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): Fix error.
*** dwarf2out.c 31 Jul 2003 21:31:24 -0000 1.445
--- dwarf2out.c 31 Jul 2003 22:24:44 -0000
*************** loc_descriptor_from_tree (tree loc, int
*** 8561,8577 ****
case CONSTRUCTOR:
{
! /* If this is already in memory and at a constant address, we can
! support it. */
! rtx rtl = TREE_CST_RTL (loc);
#ifdef ASM_SIMPLIFY_DWARF_ADDR
! if (rtl)
! rtl = ASM_SIMPLIFY_DWARF_ADDR (rtl);
#endif
-
- if (rtl == NULL_RTX || GET_CODE (rtl) != MEM
- || !CONSTANT_P (XEXP (rtl, 0)))
- return 0;
-
indirect_p = 1;
ret = mem_loc_descriptor (XEXP (rtl, 0), GET_MODE (rtl));
--- 8561,8573 ----
case CONSTRUCTOR:
{
! /* Get an RTL for this, which will may have the effect of outputting
! it. This may violates the principle of not having -g affect
! the generated code, but it's in the data segment and it's hard
! to see a case where it won't already have been output. */
! rtx rtl = output_constant_def (loc, 0);
#ifdef ASM_SIMPLIFY_DWARF_ADDR
! rtl = ASM_SIMPLIFY_DWARF_ADDR (rtl);
#endif
indirect_p = 1;
ret = mem_loc_descriptor (XEXP (rtl, 0), GET_MODE (rtl));