aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2005-06-27 22:15:11 -0700
committerRichard Henderson <rth@gcc.gnu.org>2005-06-27 22:15:11 -0700
commit46ae108707e53e994a2ee93a0f782a61f9bc0c9c (patch)
tree8a88ce7330e382bc4414b7dddef9f80c70ad7ca4 /gcc
parent54c885c5f869001bfb5698c2b0f2aa89b0b9e6e5 (diff)
downloadgcc-46ae108707e53e994a2ee93a0f782a61f9bc0c9c.zip
gcc-46ae108707e53e994a2ee93a0f782a61f9bc0c9c.tar.gz
gcc-46ae108707e53e994a2ee93a0f782a61f9bc0c9c.tar.bz2
tree-vect-transform.c (vect_create_epilog_for_reduction): Remove duplicate little-endian adjustment.
* tree-vect-transform.c (vect_create_epilog_for_reduction): Remove duplicate little-endian adjustment. From-SVN: r101372
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-vect-transform.c15
2 files changed, 10 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 76594b7..f2d29d0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-06-27 Richard Henderson <rth@redhat.com>
+
+ * tree-vect-transform.c (vect_create_epilog_for_reduction): Remove
+ duplicate little-endian adjustment.
+
2005-06-28 Kelley Cook <kcook@gcc.gnu.org>
* doc/include/texinfo.tex: Import from upstream CVS.
diff --git a/gcc/tree-vect-transform.c b/gcc/tree-vect-transform.c
index 2de9ce6..cdd3acf 100644
--- a/gcc/tree-vect-transform.c
+++ b/gcc/tree-vect-transform.c
@@ -926,17 +926,12 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt, tree reduction_op,
int vec_size_in_bits = tree_low_cst (TYPE_SIZE (vectype), 1);
tree vec_temp;
- /* The result of the reduction is expected to be at the LSB bits
- of the vector. For big-endian targets this means at the right
- end of the vector. For little-endian targets this means at the
- left end of the vector. */
-
- if (BITS_BIG_ENDIAN
- && vec_shr_optab->handlers[mode].insn_code != CODE_FOR_nothing)
+ /* The result of the reduction is expected to be at the least
+ significant bits of the vector. This is merely convention,
+ as it's the extraction later that really matters, and that
+ is also under our control. */
+ if (vec_shr_optab->handlers[mode].insn_code != CODE_FOR_nothing)
shift_code = VEC_RSHIFT_EXPR;
- else if (!BITS_BIG_ENDIAN
- && vec_shl_optab->handlers[mode].insn_code != CODE_FOR_nothing)
- shift_code = VEC_LSHIFT_EXPR;
else
have_whole_vector_shift = false;