From 6be52f624ea94a0a799abd57ca761949ac05123d Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 26 Nov 2015 13:45:45 +0000 Subject: [PATCH] genmatch.c (dt_simplify::gen_1): For generic wrap all multi-result-use captures in a SAVE_EXPR. 2015-11-26 Richard Biener * genmatch.c (dt_simplify::gen_1): For generic wrap all multi-result-use captures in a SAVE_EXPR. From-SVN: r230955 --- gcc/ChangeLog | 5 +++++ gcc/genmatch.c | 14 ++++---------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f81ce7981e8..62c2fd48772 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-11-26 Richard Biener + + * genmatch.c (dt_simplify::gen_1): For generic wrap all + multi-result-use captures in a SAVE_EXPR. + 2015-11-26 Matthew Wahab * config/aarch64/aarch64.h (AARCH64_ISA_RDMA): New. diff --git a/gcc/genmatch.c b/gcc/genmatch.c index 76c8f1fa1e2..67d1c66a61f 100644 --- a/gcc/genmatch.c +++ b/gcc/genmatch.c @@ -3112,16 +3112,10 @@ dt_simplify::gen_1 (FILE *f, int indent, bool gimple, operand *result) { if (cinfo.info[i].same_as != (unsigned)i) continue; - if (!cinfo.info[i].force_no_side_effects_p - && cinfo.info[i].result_use_count > 1) - { - fprintf_indent (f, indent, - "if (TREE_SIDE_EFFECTS (captures[%d]))\n", - i); - fprintf_indent (f, indent, - " captures[%d] = save_expr (captures[%d]);\n", - i, i); - } + if (cinfo.info[i].result_use_count > 1) + fprintf_indent (f, indent, + "captures[%d] = save_expr (captures[%d]);\n", + i, i); } for (unsigned j = 0; j < e->ops.length (); ++j) {