From 27eb31c9de20cd2eb1980c49d1dc2e3bc48483f0 Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Tue, 22 May 2012 09:33:42 +0000 Subject: [PATCH] re PR middle-end/53437 (FAIL: gcc.dg/guality/inline-params.c -O0) 2012-05-22 Richard Guenther PR middle-end/53437 * tree-inline.c (setup_one_parameter): Create a dummy init statement for unused parameters when not optimizing. From-SVN: r187767 --- gcc/ChangeLog | 6 ++++++ gcc/tree-inline.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fc082836fbc3..f73965d36670 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-05-22 Richard Guenther + + PR middle-end/53437 + * tree-inline.c (setup_one_parameter): Create a dummy init + statement for unused parameters when not optimizing. + 2012-05-22 Richard Guenther * tree-flow.h (add_referenced_var_1): Declare. diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 060b6e5442fe..8c116f641be3 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -2701,7 +2701,8 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn, STRIP_USELESS_TYPE_CONVERSION (rhs); /* If we are in SSA form properly remap the default definition - or omit the initialization if the parameter is unused. */ + or assign to a dummy SSA name if the parameter is unused and + we are not optimizing. */ if (gimple_in_ssa_p (cfun) && is_gimple_reg (p)) { if (def) @@ -2711,6 +2712,11 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn, SSA_NAME_IS_DEFAULT_DEF (def) = 0; set_default_def (var, NULL); } + else if (!optimize) + { + def = make_ssa_name (var, NULL); + init_stmt = gimple_build_assign (def, rhs); + } } else init_stmt = gimple_build_assign (var, rhs); -- 2.47.2