diff options
author | Martin Jambor <mjambor@suse.cz> | 2021-11-16 10:44:54 +0100 |
---|---|---|
committer | Martin Jambor <mjambor@suse.cz> | 2021-11-16 10:45:46 +0100 |
commit | 23125fab7b16f1aa61dfec69092786dc6d215732 (patch) | |
tree | f93ba740e6076e7d6e36a9cd77ffea93ceea0968 /gcc/tree-ssa-loop-ivopts.c | |
parent | 9f7fc82014626173bd2c9effa8d8dcb3abd9b06c (diff) | |
download | gcc-23125fab7b16f1aa61dfec69092786dc6d215732.zip gcc-23125fab7b16f1aa61dfec69092786dc6d215732.tar.gz gcc-23125fab7b16f1aa61dfec69092786dc6d215732.tar.bz2 |
Replace more DEBUG_EXPR_DECL creations with build_debug_expr_decl
As discussed on the mailing list, this patch replaces all but one
remaining open coded constructions of DEBUG_EXPR_DECL with calls to
build_debug_expr_decl, even if - in order not to introduce any
functional change - the mode of the constructed decl is then
overwritten.
It is not clear if changing the mode has any effect in practice and
therefore I have added a FIXME note to code which does it, as
requested.
After this patch, DEBUG_EXPR_DECLs are created only by
build_debug_expr_decl and make_debug_expr_from_rtl which looks like
it should be left alone.
gcc/ChangeLog:
2021-11-11 Martin Jambor <mjambor@suse.cz>
* cfgexpand.c (expand_gimple_basic_block): Use build_debug_expr_decl,
add a fixme note about the mode assignment perhaps being unnecessary.
* ipa-param-manipulation.c (ipa_param_adjustments::modify_call):
Likewise.
(ipa_param_body_adjustments::mark_dead_statements): Likewise.
(ipa_param_body_adjustments::reset_debug_stmts): Likewise.
* tree-inline.c (remap_ssa_name): Likewise.
(tree_function_versioning): Likewise.
* tree-into-ssa.c (rewrite_debug_stmt_uses): Likewise.
* tree-ssa-loop-ivopts.c (remove_unused_ivs): Likewise.
* tree-ssa.c (insert_debug_temp_for_var_def): Likewise.
Diffstat (limited to 'gcc/tree-ssa-loop-ivopts.c')
-rw-r--r-- | gcc/tree-ssa-loop-ivopts.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index 4a498ab..5a7fd30 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -7742,9 +7742,8 @@ remove_unused_ivs (struct ivopts_data *data, bitmap toremove) comp = unshare_expr (comp); if (count > 1) { - tree vexpr = make_node (DEBUG_EXPR_DECL); - DECL_ARTIFICIAL (vexpr) = 1; - TREE_TYPE (vexpr) = TREE_TYPE (comp); + tree vexpr = build_debug_expr_decl (TREE_TYPE (comp)); + /* FIXME: Is setting the mode really necessary? */ if (SSA_NAME_VAR (def)) SET_DECL_MODE (vexpr, DECL_MODE (SSA_NAME_VAR (def))); else |