aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorMark Mitchell <mmitchel@gcc.gnu.org>2000-07-27 17:25:14 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2000-07-27 17:25:14 +0000
commit589ca5cb100f0975f12890c95ea2b29301bb4294 (patch)
treef622ad1b9d2f4d839d3052a0f4fc42b6ebf07329 /gcc/rtl.h
parent2d97a71922dc879bf7ba11b5543ac4de216063e4 (diff)
downloadgcc-589ca5cb100f0975f12890c95ea2b29301bb4294.zip
gcc-589ca5cb100f0975f12890c95ea2b29301bb4294.tar.gz
gcc-589ca5cb100f0975f12890c95ea2b29301bb4294.tar.bz2
Put phi nodes after NOTE_INSN_BASIC_BLOCK.
* rtl.h (NOTE_INSN_BASIC_BLOCK_P): New macro. * bb-reorder.c (get_next_bb_note): Use NOTE_INSN_BASIC_BLOCK_P. (get_prev_bb_note): Likewise. (remove_scope_notes): Likewise. * flow.c (commit_one_edge_insertion): Likewise. (merge_blocks_nomove): Likewise. (verify_flow_info): Likewise. * gcse.c (insert_insn_end_bb): Likewise. * reg-stack.c (emit_swap_insn): Likewise. * ssa.c (first_insn_after_basic_block_note): New function. (insert_phi_node): Use it. (rename_block): Likewise. (eliminate_phi): Likewise. (make_regs_equivalent_over_bad_edges): Likewise. (make_equivalent_phi_alternatives_equivalent): Likewise. (for_each_successor_phi): Likewise. (convert_from_ssa): Modify phi-node deletion algorithm. From-SVN: r35296
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index ccf60c0..4351712 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -565,6 +565,11 @@ extern const char * const reg_note_name[];
Other kinds of NOTEs are identified by negative numbers here. */
#define NOTE_LINE_NUMBER(INSN) XCINT(INSN, 4, NOTE)
+/* Nonzero if INSN is a note marking the beginning of a basic block. */
+#define NOTE_INSN_BASIC_BLOCK_P(INSN) \
+ (GET_CODE (INSN) == NOTE \
+ && NOTE_LINE_NUMBER (INSN) == NOTE_INSN_BASIC_BLOCK)
+
/* Codes that appear in the NOTE_LINE_NUMBER field
for kinds of notes that are not line numbers.