This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Make more use of df_read_modify_subreg_p
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Jeff Law <law at redhat dot com>, gcc-patches at gcc dot gnu dot org, richard dot sandiford at linaro dot org
- Date: Fri, 13 Oct 2017 15:56:14 -0500
- Subject: Re: Make more use of df_read_modify_subreg_p
- Authentication-results: sourceware.org; auth=none
- References: <87a82qv9sw.fsf@linaro.org> <20170823155120.GX13471@gate.crashing.org> <87y3q8g6wj.fsf@linaro.org> <53c1b364-b324-49f4-bda5-d0c1fd71c559@redhat.com> <87k1zzrpws.fsf@linaro.org>
On Fri, Oct 13, 2017 at 05:08:51PM +0100, Richard Sandiford wrote:
> Yeah, I agree this'll change the handling of paradoxical subregs that
> occupy more words than the SUBREG_REG, but I think the new version is
> correct. The comment says:
>
> /* If the destination is anything other than CC0, PC, a REG or a SUBREG
> of a REG that occupies all of the REG, the insn uses DEST if
> it is mentioned in the destination or the source. Otherwise, we
> need just check the source. */
>
> and a paradoxical subreg does occupy all of the SUBREG_REG.
I don't think a paradoxical subreg is allowed to refer to more than one
word at all? At least that is how I read the documentation. For example
the very first line of the subreg documentation:
@code{subreg} expressions are used to refer to a register in a machine
mode other than its natural one, or to refer to one register of
a multi-part @code{reg} that actually refers to several registers.
Segher