[RFC PATCH, i386]: Enable post-reload compare elimination pass

Jeff Law law@redhat.com
Fri May 12 07:03:00 GMT 2017


On 05/11/2017 12:46 PM, Uros Bizjak wrote:
> On Thu, May 11, 2017 at 8:28 PM, Jeff Law <law@redhat.com> wrote:
> 
>>> Attached patch changes compare-elim.c order to what i386.md expects.
>>>
>>> Thoughts?
>>
>> Haven't looked at the patch itself.  But I do have the necessary bits to
>> convert the mn103 port.  It was slightly more than just fixing the md file,
>> but nothing significant or time consuming.  The net result is 100% identical
>> code for newlib before your patch vs after your patch w/mn103 converted.
>>
>> Hell, it was easy enough, I'll take a cut at the rx port.
> 
> Attached to this message, please find a version of the patch that
> should ease transition of other targets by declaring  and handling a
> temporary macro. This way, aarch64 can also test what happens when
> postreload cmp elimination goes live for real.
> 
> 2017-05-11  Uros Bizjak  <ubizjak@gmail.com>
> 
>      * compare-elim.c (try_eliminate_compare)
>      [TARGET_HAS_ALTERNATIVE_POSTRELOAD_EMBEDDED_COMPARE_PATTERNS]:
>      Canonicalize operation with embedded compare to
>      [(set (reg:CCM) (compare:CCM (operation) (immediate)))
>       (set (reg) (operation)].
Bah.  No need for handling both -- it's easy enough to just test the 
target and see what's caught or missing.

So far the mn103, rx and visium ports, generate the same code 
before/after conversion with fairly simple patches.

So I really think we should test aarch64, then do final review.

jeff



More information about the Gcc-patches mailing list