diff options
author | Richard Guenther <rguenther@suse.de> | 2012-05-22 09:33:42 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-05-22 09:33:42 +0000 |
commit | 27eb31c9de20cd2eb1980c49d1dc2e3bc48483f0 (patch) | |
tree | 845678aa8f7c5b020aab51aae511af0805a58969 /gcc/tree-inline.c | |
parent | 3efa0725f4e780eb523e10c0b27a3e69fd7b5081 (diff) | |
download | gcc-27eb31c9de20cd2eb1980c49d1dc2e3bc48483f0.zip gcc-27eb31c9de20cd2eb1980c49d1dc2e3bc48483f0.tar.gz gcc-27eb31c9de20cd2eb1980c49d1dc2e3bc48483f0.tar.bz2 |
re PR middle-end/53437 (FAIL: gcc.dg/guality/inline-params.c -O0)
2012-05-22 Richard Guenther <rguenther@suse.de>
PR middle-end/53437
* tree-inline.c (setup_one_parameter): Create a dummy init
statement for unused parameters when not optimizing.
From-SVN: r187767
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r-- | gcc/tree-inline.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 060b6e5..8c116f6 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); |