On Wed, Sep 2, 2015 at 9:01 AM, Kyrill Tkachov <kyrylo.tkac...@arm.com> wrote:
>
> On 02/09/15 16:18, Zamyatin, Igor wrote:
>>>
>>>
>>> On 19/08/15 17:57, Jeff Law wrote:
>>>>
>>>> On 08/12/2015 08:31 AM, Kyrill Tkachov wrote:
>>>>>
>>>>> 2015-08-10  Kyrylo Tkachov <kyrylo.tkac...@arm.com>
>>>>>
>>>>>        * ifcvt.c (struct noce_if_info): Add then_simple, else_simple,
>>>>>        then_cost, else_cost fields.  Change branch_cost field to
>>>>> unsigned int.
>>>>>        (end_ifcvt_sequence): Call set_used_flags on each insn in the
>>>>>        sequence.
>>>>>        Include rtl-iter.h.
>>>>>        (noce_simple_bbs): New function.
>>>>>        (noce_try_move): Bail if basic blocks are not simple.
>>>>>        (noce_try_store_flag): Likewise.
>>>>>        (noce_try_store_flag_constants): Likewise.
>>>>>        (noce_try_addcc): Likewise.
>>>>>        (noce_try_store_flag_mask): Likewise.
>>>>>        (noce_try_cmove): Likewise.
>>>>>        (noce_try_minmax): Likewise.
>>>>>        (noce_try_abs): Likewise.
>>>>>        (noce_try_sign_mask): Likewise.
>>>>>        (noce_try_bitop): Likewise.
>>>>>        (bbs_ok_for_cmove_arith): New function.
>>>>>        (noce_emit_all_but_last): Likewise.
>>>>>        (noce_emit_insn): Likewise.
>>>>>        (noce_emit_bb): Likewise.
>>>>>        (noce_try_cmove_arith): Handle non-simple basic blocks.
>>>>>        (insn_valid_noce_process_p): New function.
>>>>>        (contains_mem_rtx_p): Likewise.
>>>>>        (bb_valid_for_noce_process_p): Likewise.
>>>>>        (noce_process_if_block): Allow non-simple basic blocks
>>>>>        where appropriate.
>>>>>
>>>>> 2015-08-11  Kyrylo Tkachov <kyrylo.tkac...@arm.com>
>>>>>
>>>>>        * gcc.dg/ifcvt-1.c: New test.
>>>>>        * gcc.dg/ifcvt-2.c: Likewise.
>>>>>        * gcc.dg/ifcvt-3.c: Likewise.
>>
>> Looks like ifcvt-3.c fails on x86_64. I see
>>
>> New failures:
>> FAIL: gcc.dg/ifcvt-3.c scan-rtl-dump ce1 "3 true changes made"
>>
>> Could you please take a look?
>
>
> Hmm, these pass for me on x86_64-pc-linux-gnu.
> The test is most probably failing due to branch costs being too low for the
> transformation to kick in. The test passes for me with -mtune=intel and
> -mtune=generic.
> Do you know what the default tuning CPU is used for that failing test?

I opened:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67462


-- 
H.J.

Reply via email to