2018-06-28 Uros Bizjak <ubiz...@gmail.com> PR target/86348 * config/i386/sse.md (*vec_extractv4si_0_zext_sse4): Use alternative 0 in preferred_for_speed attribute.
testsuite/ChangeLog: 2018-06-28 Uros Bizjak <ubiz...@gmail.com> PR target/86348 * gcc.target/i386/pr86348.c: New test. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. Committed to mainline SVN. Uros.
Index: config/i386/sse.md =================================================================== --- config/i386/sse.md (revision 262224) +++ config/i386/sse.md (working copy) @@ -13715,7 +13715,7 @@ "#" [(set_attr "isa" "x64,*,avx512f") (set (attr "preferred_for_speed") - (cond [(eq_attr "alternative" "1") + (cond [(eq_attr "alternative" "0") (symbol_ref "TARGET_INTER_UNIT_MOVES_FROM_VEC") ] (symbol_ref "true")))]) Index: testsuite/gcc.target/i386/pr86348.c =================================================================== --- testsuite/gcc.target/i386/pr86348.c (nonexistent) +++ testsuite/gcc.target/i386/pr86348.c (working copy) @@ -0,0 +1,12 @@ +/* { dg-do compile { target { ia32 } } } */ +/* { dg-options "-O -mtune=athlon -msse4" } */ + +int i; +unsigned __attribute__ ((__vector_size__ (16))) v; + +void +foo (void) +{ + v *= i; + i = i > -(long long) v[0]; +}