summaryrefslogtreecommitdiff
path: root/gcc/dce.c
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2014-06-15 07:32:43 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2014-06-15 07:32:43 +0000
commit292321a5cd9b5988a0e73adaa0ad637a9a17b4d4 (patch)
tree12094325c8b60fc5ff9b26dd40bcb17e41bcfaa5 /gcc/dce.c
parentbfac633a90588e96050f8767052d59efd7307cb1 (diff)
downloadgcc-292321a5cd9b5988a0e73adaa0ad637a9a17b4d4.tar.gz
df.h (FOR_EACH_ARTIFICIAL_USE, [...]): New macros.
gcc/ * df.h (FOR_EACH_ARTIFICIAL_USE, FOR_EACH_ARTIFICIAL_DEF): New macros. * cse.c (cse_extended_basic_block): Use them. * dce.c (mark_artificial_use): Likewise. * df-problems.c (df_rd_simulate_artificial_defs_at_top): Likewise. (df_lr_bb_local_compute, df_live_bb_local_compute): Likewise. (df_chain_remove_problem, df_chain_bb_dump): Likewise. (df_word_lr_bb_local_compute, df_note_bb_compute): Likewise. (df_simulate_initialize_backwards): Likewise. (df_simulate_finalize_backwards): Likewise. (df_simulate_initialize_forwards): Likewise. (df_md_simulate_artificial_defs_at_top): Likewise. * df-scan.c (df_reorganize_refs_by_reg_by_insn): Likewise. * regrename.c (init_rename_info): Likewise. * regstat.c (regstat_bb_compute_ri): Likewise. (regstat_bb_compute_calls_crossed): Likewise. From-SVN: r211679
Diffstat (limited to 'gcc/dce.c')
-rw-r--r--gcc/dce.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/gcc/dce.c b/gcc/dce.c
index 252bc7a68e5..a11a4d8ea5a 100644
--- a/gcc/dce.c
+++ b/gcc/dce.c
@@ -661,16 +661,13 @@ mark_artificial_uses (void)
{
basic_block bb;
struct df_link *defs;
- df_ref *use_rec;
+ df_ref use;
FOR_ALL_BB_FN (bb, cfun)
- {
- for (use_rec = df_get_artificial_uses (bb->index);
- *use_rec; use_rec++)
- for (defs = DF_REF_CHAIN (*use_rec); defs; defs = defs->next)
- if (! DF_REF_IS_ARTIFICIAL (defs->ref))
- mark_insn (DF_REF_INSN (defs->ref), false);
- }
+ FOR_EACH_ARTIFICIAL_USE (use, bb->index)
+ for (defs = DF_REF_CHAIN (use); defs; defs = defs->next)
+ if (!DF_REF_IS_ARTIFICIAL (defs->ref))
+ mark_insn (DF_REF_INSN (defs->ref), false);
}