diff options
author | David Malcolm <dmalcolm@redhat.com> | 2014-08-25 20:13:26 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2014-08-25 20:13:26 +0000 |
commit | d8ce2eae8471ebabcc3c7c8af1b0b992911543c3 (patch) | |
tree | d837dad15df81c222f78bd99ab27cf37974cfb94 /gcc/basic-block.h | |
parent | be7457df4dc64f828597185dddffe696e5290a21 (diff) |
Remove BB_FOOTER scaffolding
gcc/
* basic-block.h (struct rtl_bb_info): Strengthen field "footer_"
from rtx to rtx_insn *.
(BB_FOOTER): Replace function with access macro.
(SET_BB_FOOTER): Delete.
* cfgcleanup.c (try_optimize_cfg): Replace uses of SET_BB_FOOTER
with BB_FOOTER.
* cfgrtl.c (try_redirect_by_replacing_jump): Likewise.
(emit_barrier_after_bb): Likewise.
(record_effective_endpoints): Likewise.
(relink_block_chain): Likewise.
(fixup_fallthru_exit_predecessor): Likewise.
(cfg_layout_duplicate_bb): Likewise.
(cfg_layout_split_block): Likewise.
(cfg_layout_delete_block): Likewise.
(cfg_layout_merge_blocks): Likewise.
(BB_FOOTER): Delete function.
(SET_BB_FOOTER): Delete function.
* combine.c (update_cfg_for_uncondjump): Replace uses of
SET_BB_FOOTER with BB_FOOTER.
/
* rtx-classes-status.txt (TODO): Remove SET_BB_FOOTER.
From-SVN: r214470
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r-- | gcc/basic-block.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h index f640f399eec..1f23f04fb21 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -127,7 +127,7 @@ struct GTY(()) rtl_bb_info { /* In CFGlayout mode points to insn notes/jumptables to be placed just before and after the block. */ rtx header_; - rtx footer_; + rtx_insn *footer_; }; struct GTY(()) gimple_bb_info { @@ -381,8 +381,7 @@ extern rtx& SET_BB_END (basic_block bb); extern rtx_insn *BB_HEADER (const_basic_block bb); extern rtx& SET_BB_HEADER (basic_block bb); -extern rtx_insn *BB_FOOTER (const_basic_block bb); -extern rtx& SET_BB_FOOTER (basic_block bb); +#define BB_FOOTER(B) (B)->il.x.rtl->footer_ /* Special block numbers [markers] for entry and exit. Neither of them is supposed to hold actual statements. */ |