OSDN Git Service

PR tree-optimization/51074
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 11 Nov 2011 19:55:23 +0000 (19:55 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 11 Nov 2011 19:55:23 +0000 (19:55 +0000)
commit00161311c00d966d1ccfce1f12a28222fdb133fe
treeda6d861de02810601827aa20e1dd872a3b954e96
parent3ec11c499027aff2ba4041409c7ad18a372d767c
PR tree-optimization/51074
* fold-const.c (vec_cst_ctor_to_array, fold_vec_perm): New functions.
(fold_binary_loc): Handle VEC_EXTRACT_EVEN_EXPR,
VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR and
VEC_INTERLEAVE_LOW_EXPR with VECTOR_CST or CONSTRUCTOR operands.
(fold_ternary_loc): Handle VEC_PERM_EXPR with VECTOR_CST or
CONSTRUCTOR operands.
* tree-ssa-propagate.c (valid_gimple_rhs_p): Handle ternary
expressions.
* tree-vect-generic.c (lower_vec_perm): Mask sel_int elements
to 0 .. 2 * elements - 1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181297 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/fold-const.c
gcc/tree-ssa-propagate.c
gcc/tree-vect-generic.c