On 12/16/20 5:47 PM, Richard Sandiford wrote:
> Jeff Law <l...@redhat.com> writes:
>> On 11/13/20 1:21 AM, Richard Sandiford via Gcc-patches wrote:
>>> This patch adds a routine for finding a “simple” SET for a register
>>> definition. See the comment in the patch for details.
>>>
>>> gcc/
>>> * rtl.h (simple_regno_set): Declare.
>>> * rtlanal.c (simple_regno_set): New function.
>> So I was a bit confused that this is supposed to reject read-write, but
>> what it's really rejecting is a narrow subset of read-write. In
>> particular it rejects things that are potentially RMW via subregs. It
>> doesn't prevent the destination from appearing as a source operand. You
>> might consider clarifying the comment.
> Yeah, in hindsight it was a mistake to spell out the RMW point
> separately when it was really just an extra condition on the subreg.
>
> I'd tweaked this comment and the mux-utils.h one (in response
> to Martin's feedback) while doing the cross-target testing,
> but forgot to include the changes to the committed version.
> (The tested versions were otherwise identical, honest.)
>
> Tested on aarch64-linux-gnu and x86_64-linux-gnu. OK to install?
>
> Thanks,
> Richard
>
>
> gcc/
> * mux-utils.h (pointer_mux::m_ptr): Tweak description of contents.
> * rtlanal.c (simple_regno_set): Tweak description to clarify the
> RMW condition.
OK
jeff