This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [DWARF] Fix multiple register spanning location.
- From: Cary Coutant <ccoutant at google dot com>
- To: Christian Bruel <christian dot bruel at st dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Jason Merrill <jason at redhat dot com>
- Date: Wed, 15 May 2013 15:27:25 -0700
- Subject: Re: [DWARF] Fix multiple register spanning location.
- References: <5188AFC2 dot 1000105 at st dot com>
> > How about using dbx_reg_number (XVECEXP (regs, 0, i)) instead? The
> > bare use of DBX_REGISTER_NUMBER earlier in that function is protected
> > by a gcc_assert, but this one isn't.
>
> OK dbx_reg_number better than DBX_REGISTER_NUMBER here.
> while we are on it, it looks like the spanning case code could be
> simplified :
> - size is loop invariant (I don't think we can span across registers
> of different modes)
> - rtl is only used in the "Simple, contiguous registers." case.
> - current_function_uses_only_leaf_regs is not handled for the spanning
> case.
>
> Does that seem OK with the attached patch ?
Yes, this looks good. OK for trunk, but please add a note about those
additional changes you made to the ChangeLog entry. Thanks!
2013-04-26 Christian Bruel <christian.bruel@st.com>
* dwarf2out.c (multiple_reg_loc_descriptor): Use DBX_REGISTER_NUMBER
for spanning registers.
-cary