On Wed, Aug 5, 2015 at 3:16 AM, Richard Biener <[email protected]> wrote:
> On Wed, 5 Aug 2015, Andreas Schwab wrote:
>
>> Richard Biener <[email protected]> writes:
>>
>> > * gimple-fold.c (gimple_fold_stmt_to_constant_1): Canonicalize
>> > bool compares on RHS.
>> > * match.pd: Add X ==/!= !X is false/true pattern.
>>
>> ERROR in VTST/VTSTQ
>> (/opt/gcc/gcc-20150805/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vtst.c
>> line 97 in buffer 'expected_signed') at type uint8x8 index 1: got 0x1 !=
>> 0xff (signed input)
>> FAIL: gcc.target/aarch64/advsimd-intrinsics/vtst.c -O1 execution test
>> FAIL: gcc.target/aarch64/simd/int_comparisons_1.c scan-assembler-times [
>> \t]cmtst[ \t]+v[0-9]+.[0-9]+[bshd],[ \t]*v[0-9]+.[0-9]+[bshd],[
>> \t]+v[0-9]+.[0-9]+[bshd] 14
>> FAIL: gcc.target/aarch64/simd/int_comparisons_1.c scan-assembler-times [
>> \t]cmtst[ \t]+d[0-9]+,[ \t]*d[0-9]+,[ \t]+d[0-9]+ 4
>> FAIL: gcc.target/aarch64/simd/int_comparisons_2.c execution test
>> FAIL: gcc.target/aarch64/singleton_intrinsics_1.c scan-assembler-times
>> \\tcmtst\\td[0-9]+, d[0-9]+, d[0-9]+ 2
>
> Ick - somebody will have to come up with a reduced testcase for one of
> this (best an execute fail). Reduced to one failing case so I can
> investigate with a cross compiler.
>
> Eventually smells like a aarch64 vector specific issue or a latent
> issue with the truth_valued_p predicate for vector types.
Or constant_boolean_node is not returning {-1,-1,-1,-1} for true vectors.
Thanks,
Andrew
>
> Richard.
>
>> Andreas.
>>
>>
>
> --
> Richard Biener <[email protected]>
> SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Dilip Upmanyu, Graham
> Norton, HRB 21284 (AG Nuernberg)