diff options
author | Richard Henderson <rth@redhat.com> | 2005-06-27 22:15:11 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2005-06-27 22:15:11 -0700 |
commit | 46ae108707e53e994a2ee93a0f782a61f9bc0c9c (patch) | |
tree | 8a88ce7330e382bc4414b7dddef9f80c70ad7ca4 /gcc | |
parent | 54c885c5f869001bfb5698c2b0f2aa89b0b9e6e5 (diff) | |
download | gcc-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/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-vect-transform.c | 15 |
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; |