aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2017-09-14 16:18:55 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2017-09-14 16:18:55 +0000
commite7c45b6600acfdc0930b980a45a364f77844139a (patch)
treef07cb487b4874c0bff14e1e55b322fe455c59610 /gcc/ChangeLog
parent908a1a166dccefa24ae8b3606f4ce1da944eecb0 (diff)
downloadgcc-e7c45b6600acfdc0930b980a45a364f77844139a.zip
gcc-e7c45b6600acfdc0930b980a45a364f77844139a.tar.gz
gcc-e7c45b6600acfdc0930b980a45a364f77844139a.tar.bz2
Add gimple_build_vector* helpers
This patch adds gimple-fold.h equivalents of build_vector and build_vector_from_val. Like the other gimple-fold.h routines they always return a valid gimple value and add any new statements to a given gimple_seq. In combination with later patches this reduces the number of force_gimple_operands. 2017-09-14 Richard Sandiford <richard.sandiford@linaro.org> Alan Hayward <alan.hayward@arm.com> David Sherwood <david.sherwood@arm.com> gcc/ * gimple-fold.h (gimple_build_vector_from_val): Declare, and provide an inline wrapper that provides a location. (gimple_build_vector): Likewise. * gimple-fold.c (gimple_build_vector_from_val): New function. (gimple_build_vector): Likewise. * tree-vect-loop.c (get_initial_def_for_reduction): Use the new functions to build the initial value. Always return a gimple value. (get_initial_defs_for_reduction): Likewise. Only compute neutral_vec once. (vect_create_epilog_for_reduction): Don't call force_gimple_operand or vect_init_vector on the results from get_initial_def(s)_for_reduction. (vectorizable_induction): Use gimple_build_vector rather than vect_init_vector. Co-Authored-By: Alan Hayward <alan.hayward@arm.com> Co-Authored-By: David Sherwood <david.sherwood@arm.com> From-SVN: r252762
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog18
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a6c6fcc..d582e2c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -2,6 +2,24 @@
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
+ * gimple-fold.h (gimple_build_vector_from_val): Declare, and provide
+ an inline wrapper that provides a location.
+ (gimple_build_vector): Likewise.
+ * gimple-fold.c (gimple_build_vector_from_val): New function.
+ (gimple_build_vector): Likewise.
+ * tree-vect-loop.c (get_initial_def_for_reduction): Use the new
+ functions to build the initial value. Always return a gimple value.
+ (get_initial_defs_for_reduction): Likewise. Only compute
+ neutral_vec once.
+ (vect_create_epilog_for_reduction): Don't call force_gimple_operand or
+ vect_init_vector on the results from get_initial_def(s)_for_reduction.
+ (vectorizable_induction): Use gimple_build_vector rather than
+ vect_init_vector.
+
+2017-09-14 Richard Sandiford <richard.sandiford@linaro.org>
+ Alan Hayward <alan.hayward@arm.com>
+ David Sherwood <david.sherwood@arm.com>
+
* target.h (vec_perm_indices): New typedef.
(auto_vec_perm_indices): Likewise.
* optabs-query.h: Include target.h