Hello! > This patch fixes dg-final scans in tests from vect.exp suite, which > currently fail when avx2 is used.
--- a/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c +++ b/gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-31.c @@ -88,5 +88,6 @@ int main (void) /* { dg-final { scan-tree-dump-times "vectorized 4 loops" 1 "vect" } } */ /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 0 "vect" } } */ -/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 2 "vect" } } */ +/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 2 "vect" { target {! vect_multiple_sizes} } } } */ +/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 2 "vect" { xfail vect_multiple_sizes} } } */ /* { dg-final { cleanup-tree-dump "vect" } } */ Please do not add xfails through the patch, xfail means that a problem was identified and will someday be fixed. In the above case, just add target condition, no need for xfailed scan. If I'm not missing simething, you can probably remove all introduced xfails, just add new target conditions. # Return 1 if avx instructions can be compiled. +proc check_effective_explicit_target_avx { } { + return [check_no_messages_and_pattern e_avx "!__builtin_ia32_vzeroall" assembly { + void _mm256_zeroall (void) + { + __builtin_ia32_vzeroall (); + } + } "-O2" ] +} Please use # Return true if we are compiling for AVX target. proc check_avx_available { } { return [check_no_compiler_messages avx_available assembly { #ifndef __AVX__ #error unsupported #endif } ""] } Uros.