vec_perm cost to 1 for non-Power7 VSX architectures

gcc/ChangeLog

2019-09-29  Kewen Lin  <linkw@gcc.gnu.org>

    * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Lower
    vec_perm cost to 1 for non-Power7 VSX architectures.

From-SVN: r276267
This commit is contained in:
Kewen Lin 2019-09-29 09:18:22 +00:00
parent 51df413634
commit b19d2e5e1a
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2019-09-29 Kewen Lin <linkw@gcc.gnu.org>
* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Lower
vec_perm cost to 1 for non-Power7 VSX architectures.
2019-09-29 Kewen Lin <linkw@gcc.gnu.org>
* config/rs6000/vsx.md (vec_pack[su]_float_v2di): New define_expand.

View File

@ -4774,7 +4774,8 @@ rs6000_builtin_vectorization_cost (enum vect_cost_for_stmt type_of_cost,
return 1;
case vec_perm:
if (TARGET_VSX)
/* Power7 has only one permute unit, make it a bit expensive. */
if (TARGET_VSX && rs6000_tune == PROCESSOR_POWER7)
return 3;
else
return 1;