summaryrefslogtreecommitdiff
path: root/gcc/df-scan.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2019-09-30 16:20:30 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2019-09-30 16:20:30 +0000
commitc92503717bd0c3a0706f8c9626c47d49d901063b (patch)
tree9c3753a137684133b3af3c2d8cf8e898e962e725 /gcc/df-scan.c
parent3bd2918594dae34ae84f802747471445a976af09 (diff)
Remove global call sets: DF (EH edges)
The DF dense_invalidated_by_call and sparse_invalidated_by_call sets are actually only used on EH edges, and so are more the set of registers that are invalidated by a taken EH edge. Under the new order, that means that they describe eh_edge_abi. 2019-09-30 Richard Sandiford <richard.sandiford@arm.com> gcc/ * df-problems.c: Include regs.h and function-abi.h. (df_rd_problem_data): Rename sparse_invalidated_by_call to sparse_invalidated_by_eh and dense_invalidated_by_call to dense_invalidated_by_eh. (df_print_bb_index): Update accordingly. (df_rd_alloc, df_rd_start_dump, df_rd_confluence_n): Likewise. (df_lr_confluence_n): Use eh_edge_abi to get the set of registers that are clobbered by an EH edge. Clobber partially-clobbered registers as well as fully-clobbered ones. (df_md_confluence_n): Likewise. (df_rd_local_compute): Likewise. Update for changes to df_rd_problem_data. * df-scan.c (df_scan_start_dump): Use eh_edge_abi to get the set of registers that are clobbered by an EH edge. Includde partially- clobbered registers as well as fully-clobbered ones. From-SVN: r276319
Diffstat (limited to 'gcc/df-scan.c')
-rw-r--r--gcc/df-scan.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 7ca1050f789..7dda4cacf7a 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -312,8 +312,9 @@ df_scan_start_dump (FILE *file ATTRIBUTE_UNUSED)
basic_block bb;
rtx_insn *insn;
- fprintf (file, ";; invalidated by call \t");
- df_print_regset (file, bitmap_view<HARD_REG_SET> (regs_invalidated_by_call));
+ fprintf (file, ";; fully invalidated by EH \t");
+ df_print_regset
+ (file, bitmap_view<HARD_REG_SET> (eh_edge_abi.full_reg_clobbers ()));
fprintf (file, ";; hardware regs used \t");
df_print_regset (file, &df->hardware_regs_used);
fprintf (file, ";; regular block artificial uses \t");