aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2009-10-23 12:01:21 +0000
committerRichard Guenther <rguenther@suse.de>2009-10-23 12:01:21 +0000
commit81c7b70f17f3cf1421909a1d01d9cb21740e57c7 (patch)
tree238740f5cee8583ced3caa8e5ccc73863f2418bb
parent55a411413e44cf38a4ffce710f1bb2f1a9a8d1d4 (diff)
2009-10-23 Richard Guenther <rguenther@suse.de>
PR middle-end/41805 * cfgexpand.c (expand_call_stmt): Use gimple_has_side_effects and gimple_call_nothrow_p. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@153495 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cfgexpand.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e0f70c48843..b0a45ab8cfe 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2009-10-23 Richard Guenther <rguenther@suse.de>
+ PR middle-end/41805
+ * cfgexpand.c (expand_call_stmt): Use gimple_has_side_effects and
+ gimple_call_nothrow_p.
+
+2009-10-23 Richard Guenther <rguenther@suse.de>
+
PR tree-optimization/41778
* tree-ssa-pre.c (do_regular_insertion): Only insert if a
redundancy along a path in the CFG we want to optimize for speed
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 2678d7e7ffe..be46028fa58 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -1768,10 +1768,10 @@ expand_call_stmt (gimple stmt)
for (i = 0; i < gimple_call_num_args (stmt); i++)
CALL_EXPR_ARG (exp, i) = gimple_call_arg (stmt, i);
- if (!(gimple_call_flags (stmt) & (ECF_CONST | ECF_PURE)))
+ if (gimple_has_side_effects (stmt))
TREE_SIDE_EFFECTS (exp) = 1;
- if (gimple_call_flags (stmt) & ECF_NOTHROW)
+ if (gimple_call_nothrow_p (stmt))
TREE_NOTHROW (exp) = 1;
CALL_EXPR_TAILCALL (exp) = gimple_call_tail_p (stmt);