diff options
author | Jason Merrill <jason@redhat.com> | 2018-04-30 11:20:46 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2018-04-30 11:20:46 -0400 |
commit | 94b2a1e543ca20ed5e0468a186b27822d98b81b8 (patch) | |
tree | e1da0af4455ae5bb9a676b99eeaa2dfd32d2b4c5 /gcc/gimplify.c | |
parent | 7761dfbee17cb7a4bb3539a381bec63d31af7c28 (diff) | |
download | gcc-94b2a1e543ca20ed5e0468a186b27822d98b81b8.zip gcc-94b2a1e543ca20ed5e0468a186b27822d98b81b8.tar.gz gcc-94b2a1e543ca20ed5e0468a186b27822d98b81b8.tar.bz2 |
tree.c (build_clobber): New.
* tree.c (build_clobber): New.
* tree.h: Declare it.
* gimplify.c (gimplify_bind_expr, gimplify_target_expr): Use it.
From-SVN: r259770
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r-- | gcc/gimplify.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c index c32869b4..b5b80ab 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -1379,9 +1379,8 @@ gimplify_bind_expr (tree *expr_p, gimple_seq *pre_p) && !is_gimple_reg (t) && flag_stack_reuse != SR_NONE) { - tree clobber = build_constructor (TREE_TYPE (t), NULL); + tree clobber = build_clobber (TREE_TYPE (t)); gimple *clobber_stmt; - TREE_THIS_VOLATILE (clobber) = 1; clobber_stmt = gimple_build_assign (t, clobber); gimple_set_location (clobber_stmt, end_locus); gimplify_seq_add_stmt (&cleanup, clobber_stmt); @@ -6603,9 +6602,7 @@ gimplify_target_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p) { if (flag_stack_reuse == SR_ALL) { - tree clobber = build_constructor (TREE_TYPE (temp), - NULL); - TREE_THIS_VOLATILE (clobber) = true; + tree clobber = build_clobber (TREE_TYPE (temp)); clobber = build2 (MODIFY_EXPR, TREE_TYPE (temp), temp, clobber); gimple_push_cleanup (temp, clobber, false, pre_p, true); } |