summaryrefslogtreecommitdiff
path: root/gcc/basic-block.h
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2014-08-25 20:13:26 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2014-08-25 20:13:26 +0000
commitd8ce2eae8471ebabcc3c7c8af1b0b992911543c3 (patch)
treed837dad15df81c222f78bd99ab27cf37974cfb94 /gcc/basic-block.h
parentbe7457df4dc64f828597185dddffe696e5290a21 (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.h5
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. */