[PATCH] Adjust builtin-bswap-6/7

Andreas Krebbel krebbel@linux.vnet.ibm.com
Tue Apr 8 09:22:00 GMT 2014


On 04/08/2014 11:12 AM, Jakub Jelinek wrote:
> On Tue, Apr 08, 2014 at 10:53:19AM +0200, Andreas Krebbel wrote:
>> On 04/08/2014 10:41 AM, Jakub Jelinek wrote:
>>> On Tue, Apr 08, 2014 at 10:26:30AM +0200, Richard Biener wrote:
>>>> On Mon, Apr 7, 2014 at 6:22 PM, Andreas Krebbel
>>>> <krebbel@linux.vnet.ibm.com> wrote:
>>>>> On Mon, Apr 07, 2014 at 04:19:06PM +0200, Richard Biener wrote:
>>>>>> The adjusted testcases now fail on x86_64/i?86 at least.  See PR60776.
>>>>>
>>>>> They seem to require at least -O2 on x86 with that change. Ok to apply?
>>>>
>>>> Hmm, they passed before your change.  Do you mean that this was
>>>> by accident (and only because of the special return value)?  If so then
>>>> the patch is ok.
>>>
>>> The reason why it worked with the if ... return 1; else return 0; case is
>>> that in that case it has already been expanded as store flag insn and thus
>>> in that case ce1 pass didn't discover the conditional move there, thus no
>>> dead code waiting to be eliminated after ce1 and still present during
>>> combine pass.
>>>
>>> Another alternative for -O2 would be -O -fno-if-conversion I guess.
>>
>> I could also revert the testcase changes and add -mbranch-cost=2 for s390?!
> 
> That doesn't seem to work (at least for me with cross-compiler to s390x).

Seems to be -mbranch-cost=0 this time.

> 
>>>
>>> OT, when touching the testcase, I'd say it would be better if you've
>>> converted it to single dg-options + /* { dg-additional-options "-march=z900" { target s390*-*-* } } */
>>
>> Ok.
> 
> Thanks.
> 
> 	Jakub
> 



More information about the Gcc-patches mailing list