This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] regcprop fix for PR rtl-optimization/54300


On 20/11/13 13:57, Richard Earnshaw wrote:
> On 19/11/13 17:48, Jeff Law wrote:
>> On 11/19/13 10:32, Steven Bosscher wrote:
>>>
>>> Yes. In the GCC3 days it was important for sincos on i386, and on mk68
>>> it used to be important for some of the funnier patterns. Not sure if
>>> it's still useful today, though. Might be worth looking into, just to
>>> avoid the confusion in the future.
>> I doubt it's changed all that much :-)
>>
>>>
>>> There's been confusion about this before, where people assumed
>>> single_set really means "just one SET in this pattern". (ISTR fixing
>>> gcse.c's hash_scan_rtx for this at some point...?). But that's not the
>>> semantics of single_set.
>> Yes.  And I'd expect confusion to continue :(  Not sure if creating 
>> renaming to capture the actual semantics would help here.
>>
>>>
>>> The proper test for "just one SET" is (!multiple_sets && single_set).
>>> At least, that's how I've always coded it...
>> Seems reasonable for those cases where you have to ensure there really 
>> is just one set.
>>
>>
>> jeff
>>
> 
> Provided we correctly note the other values that are killed, we can
> handle multiple sets safely.  The one restriction we have to watch is
> where the dead set operations kill input values to the live set operation.
> 
> I've committed my patch to trunk.
> 
> I'll leave it to gestate a couple of days, but this is also needed on
> the active release branches as well.
> 

Well, a bit more than a few days...

4.8 backport has now been applied.  4.7 should follow shortly.

R.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]