diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-03-22 14:38:42 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-03-22 14:38:42 +0000 |
commit | 19db1ec8f1712d5c6107f6795c82be163fda6c80 (patch) | |
tree | 07e38dec0fc55cf290a215c1b217490973866e7b /gcc/gimple-match-head.c | |
parent | de634e657fdb4fb88212863ef0a5d0f67aac977d (diff) | |
download | gcc-19db1ec8f1712d5c6107f6795c82be163fda6c80.tar.gz |
2016-03-22 Richard Biener <rguenther@suse.de>
PR middle-end/70251
* genmatch.c (gen_transform): Adjust last parameter to a three-state
int...
(capture::gen_transform): ... to change behavior when substituting
a condition into cond or not-cond expr context.
(dt_simplify::gen_1): Adjust.
* gimple-match-head.c: Include gimplify.h for unshare_expr.
* match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Revert
last change and instead change to
A + (B vcmp C ? 1 : 0) -> A - (B vcmp C ? -1 : 0).
(A - (B vcmp C ? 1 : 0) -> A + (B vcmp C)): Likewise.
* g++.dg/torture/pr70251.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234405 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gimple-match-head.c')
-rw-r--r-- | gcc/gimple-match-head.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/gimple-match-head.c b/gcc/gimple-match-head.c index 3e6d15f1b36..c86a4ffb0e3 100644 --- a/gcc/gimple-match-head.c +++ b/gcc/gimple-match-head.c @@ -38,6 +38,7 @@ along with GCC; see the file COPYING3. If not see #include "tree-pass.h" #include "internal-fn.h" #include "case-cfn-macros.h" +#include "gimplify.h" /* Forward declarations of the private auto-generated matchers. |