aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2015-07-14 07:25:55 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2015-07-14 07:25:55 +0000
commit8fdc6c67ad030e6caf88f391eb1deac0ce3679b3 (patch)
treeccc608c672b2695baf0c2f4456fb027e99928f9e /gcc/gcc.c
parent67a546ab451541e24dae5c8ecbaf692c8cd89f08 (diff)
downloadgcc-8fdc6c67ad030e6caf88f391eb1deac0ce3679b3.zip
gcc-8fdc6c67ad030e6caf88f391eb1deac0ce3679b3.tar.gz
gcc-8fdc6c67ad030e6caf88f391eb1deac0ce3679b3.tar.bz2
genmatch.c (struct operand): Add OP_IF and OP_WITH op_types.
2015-07-14 Richard Biener <rguenther@suse.de> * genmatch.c (struct operand): Add OP_IF and OP_WITH op_types. (struct if_expr): New. (struct with_expr): Likewise. (is_a_helper): Add helpers for if_expr and with_expr. (struct simplify): Add simplify_kind enum and member. Remove ifexpr_vec member. (simplify::simplify): Adjust. (lower_commutative): Adjust. (lower_opt_convert): Likewise. (lower_cond): Likewise. (replace_id): Handle with_expr and if_expr. (lower_for): Adjust. (dt_simplify::gen_1): New recursive worker, split out from ... (dt_simplify::gen): ... here. Deal with if and with expansion recursively. (capture_info::capture_info): Take context argument (capture_info::walk_result): Only analyze specific result. (parser::parse_result): New function. (parser::parse_simplify): Adjust to parse ifs with then end else case. (parser::parse_if): Simplify. (parser::parse_pattern): Pass down simplify kind. * match.pd: Convert if structure to new syntax. From-SVN: r225760
Diffstat (limited to 'gcc/gcc.c')
0 files changed, 0 insertions, 0 deletions