2015-08-03 Richard Biener <rguenther@suse.de>
commit05999bfc61ff78d0f2cc241362b3cebd2c990d67
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 13:45:22 +0000 (3 13:45 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 13:45:22 +0000 (3 13:45 +0000)
tree029b574d3fb17e189fbbcf47afaffe0e7a816102
parentec66e09c7e551c8464401c451a51db2e10c09b4d
2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (simplify::for_subst_vec): New member.
(binary_ok): New helper for for lowering.
(lower_for): Delay substituting operators into result expressions
if we can merge the results eventually again.
(capture_info::walk_result): Adjust for user_id appearing as
result expression operator.
(expr::gen_transform): Likewise.
(dt_simplify::gen_1): Likewise.
(dt_simplify::gen): Pass not substituted operators to tail
functions or initialize local variable with it.
(decision_tree::gen): Adjust function signature.
* match.pd: Fix tests against global code and add default
cases to switch stmts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226505 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/match.pd