This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH]: update to df for mainline.
Bernd Schmidt wrote:
> Daniel Berlin wrote:
>
>> Based on this discussion, I also have a hard time believing any part
>> outside of flow (or possibly including flow) actually gets subregs right
>> all the time, since nobody can seem to articulate the entire complete
>> set of dataflow distinctions that must be made for them. :)
>
> Ian and I seem to be giving you the same set of rules. Just because
> we think it sucks doesn't mean it can't be gotten right. Reload
> traditionally has some subreg problems, but they aren't really
> dataflow related - I think most parts of the compiler are probably
> fine, if only because they rely on flow's REG_DEAD notes.
>
>
> Bernd
Is this correct, and if it is not what is wrong with it.
if (single word register)
{
if (operand of set is subreg wrapped in STRICT_LOWER_PART)
partial_clobber = true;
else
/* all other sets of single word registers. */
partial_clobber = false;
}
else /* Set to a multi word reg.
{
if (set is of a subreg of the mw register)
partial_clobber = true;
else
partial_clobber = false;
}