This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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));


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]