gimple.c (gimple_rhs_class_table): POLYNOMIAL_CHREC is not a valid RHS.
authorRichard Guenther <rguenther@suse.de>
Tue, 22 Mar 2011 11:12:57 +0000 (11:12 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 22 Mar 2011 11:12:57 +0000 (11:12 +0000)
commitf471fe729f9c1a3a182818c7789a3a1893a00107
tree3711abed3ce4b0f3906eade82ded0eb8a2423e3d
parentd1d879b1f457f88bde4053b39606f698e7c3cc94
gimple.c (gimple_rhs_class_table): POLYNOMIAL_CHREC is not a valid RHS.

2011-03-22  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_rhs_class_table): POLYNOMIAL_CHREC is not
a valid RHS.  Make DOT_PROD_EXPR and REALIGN_LOAD_EXPR ternary.
* tree-cfg.c (verify_gimple_assign_ternary): Allow DOT_PROD_EXPR
and REALIGN_LOAD_EXPR.
(verify_gimple_assign_single): Do not allow POLYNOMIAL_CHREC,
DOT_PROD_EXPR or REALIGN_LOAD_EXPR.
* expr.c (expand_expr_real_1): Move REALIGN_LOAD_EXPR and
DOT_PROD_EXPR case ...
(expand_expr_real_2): ... here.
* gimple-pretty-print.c (dump_ternary_rhs): Handle DOT_PROD_EXPR
and REALIGN_LOAD_EXPR.
* tree-data-ref.c (split_constant_offset): Bail out for all CHRECs.
* tree-vect-loop.c (vect_model_reduction_cost): Handle ternaries.
(vect_create_epilog_for_reduction): Likewise.
(vectorizable_reduction): Likewise.
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Adjust.
* tree-vect-stmts.c (vectorizable_load): Likewise.

From-SVN: r171284
gcc/ChangeLog
gcc/expr.c
gcc/gimple-pretty-print.c
gcc/gimple.c
gcc/tree-cfg.c
gcc/tree-data-ref.c
gcc/tree-vect-loop.c
gcc/tree-vect-patterns.c
gcc/tree-vect-stmts.c