From: Kewen Lin Date: Sun, 29 Sep 2019 09:18:22 +0000 (+0000) Subject: vec_perm cost to 1 for non-Power7 VSX architectures X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b19d2e5e1a895ee5e331c20f7eec02f3081b3d79;p=gcc.git vec_perm cost to 1 for non-Power7 VSX architectures gcc/ChangeLog 2019-09-29 Kewen Lin * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Lower vec_perm cost to 1 for non-Power7 VSX architectures. From-SVN: r276267 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9714e98df9f..2c7a847e327 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-09-29 Kewen Lin + + * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Lower + vec_perm cost to 1 for non-Power7 VSX architectures. + 2019-09-29 Kewen Lin * config/rs6000/vsx.md (vec_pack[su]_float_v2di): New define_expand. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index f136dcbf8c3..a34415349e6 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -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;