summaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authormatz <matz@138bc75d-0d04-0410-961f-82ee72b054a4>2009-08-25 13:33:54 +0000
committermatz <matz@138bc75d-0d04-0410-961f-82ee72b054a4>2009-08-25 13:33:54 +0000
commit2c02962cf935ac329a5069f6721839c3c1a3d331 (patch)
tree21065dda4814644807909923e74947363f96ca60 /gcc/ChangeLog
parent588e1cc345332f6d464f2de3aa43692535094ab5 (diff)
downloadgcc-2c02962cf935ac329a5069f6721839c3c1a3d331.tar.gz
* expr.h (struct separate_ops, sepops): New type for passing
around an exploded simple expression. * optabs.c (expand_widen_pattern_expr, expand_vec_shift_expr): Use this structure instead of expression tree. (get_vcond_icode, expand_vec_cond_expr_p): Don't take whole expression, only its type. (expand_vec_cond_expr): Take type and individual operands instead of full expression. * optabs.h (expand_widen_pattern_expr, expand_vec_cond_expr, expand_vec_shift_expr): Change prototype accordingly. * tree-vect-stmts.c (vectorizable_condition): Change call of expand_vec_cond_expr_p to pass only type. * expr.c (do_store_flags): Change prototype and implementation to take an exploded expression. (expand_expr_real_1): New local ops initialized with details of the full expression. Use it instead of full expression in calls to do_store_flags, expand_vec_cond_expr, expand_widen_pattern_expr and expand_vec_shift_expr. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151079 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bb5e0b11eaf..e99500ba514 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,26 @@
2009-08-25 Michael Matz <matz@suse.de>
+ * expr.h (struct separate_ops, sepops): New type for passing
+ around an exploded simple expression.
+ * optabs.c (expand_widen_pattern_expr, expand_vec_shift_expr):
+ Use this structure instead of expression tree.
+ (get_vcond_icode, expand_vec_cond_expr_p): Don't take whole
+ expression, only its type.
+ (expand_vec_cond_expr): Take type and individual operands instead
+ of full expression.
+ * optabs.h (expand_widen_pattern_expr, expand_vec_cond_expr,
+ expand_vec_shift_expr): Change prototype accordingly.
+ * tree-vect-stmts.c (vectorizable_condition): Change call of
+ expand_vec_cond_expr_p to pass only type.
+ * expr.c (do_store_flags): Change prototype and implementation
+ to take an exploded expression.
+ (expand_expr_real_1): New local ops initialized with details
+ of the full expression. Use it instead of full
+ expression in calls to do_store_flags, expand_vec_cond_expr,
+ expand_widen_pattern_expr and expand_vec_shift_expr.
+
+2009-08-25 Michael Matz <matz@suse.de>
+
* expr.c (expand_expr_real_1): New local treeop0, treeop1,
treeop2 initialized with first three operands of the full expression.
Substitute all TREE_OPERAND (exp, [012]) calls with them.