public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: David Malcolm <dmalcolm@redhat.com>
To: gcc-patches@gcc.gnu.org
Cc: David Malcolm <dmalcolm@redhat.com>
Subject: [PATCH 008/236] Split BB_HEAD et al into BB_HEAD/SET_BB_HEAD variants
Date: Wed, 06 Aug 2014 17:19:00 -0000	[thread overview]
Message-ID: <1407345815-14551-9-git-send-email-dmalcolm@redhat.com> (raw)
In-Reply-To: <1407345815-14551-1-git-send-email-dmalcolm@redhat.com>

This is an enabling patch, splitting existing macros in two, covering
the rvalue and lvalue uses separately.

Followup patches will replace these with functions, and gradually convert
the types from rtx to rtx_insn *, but we need to do this separately for
the lvalue vs rvalue use-cases, hence this patch.

The plan is to eventually eliminate the split in a further followup patch,
and convert them back to macros, where the underlying fields are of type
rtx_insn *.

gcc/
	* basic-block.h (BB_HEAD): Split macro in two: the existing one,
	for rvalues, and...
	(SET_BB_HEAD): New macro, for use as a lvalue.
	(BB_END, SET_BB_END): Likewise.
	(BB_HEADER, SET_BB_HEADER): Likewise.
	(BB_FOOTER, SET_BB_FOOTER): Likewise.

	* bb-reorder.c (add_labels_and_missing_jumps): Convert lvalue use
	of BB_* macros into SET_BB_* macros.
	(fix_crossing_unconditional_branches): Likewise.
	* caller-save.c (save_call_clobbered_regs): Likewise.
	(insert_one_insn): Likewise.
	* cfgbuild.c (find_bb_boundaries): Likewise.
	* cfgcleanup.c (merge_blocks_move_successor_nojumps): Likewise.
	(outgoing_edges_match): Likewise.
	(try_optimize_cfg): Likewise.
	* cfgexpand.c (expand_gimple_cond): Likewise.
	(expand_gimple_tailcall): Likewise.
	(expand_gimple_basic_block): Likewise.
	(construct_exit_block): Likewise.
	* cfgrtl.c (delete_insn): Likewise.
	(create_basic_block_structure): Likewise.
	(rtl_delete_block): Likewise.
	(rtl_split_block): Likewise.
	(emit_nop_for_unique_locus_between): Likewise.
	(rtl_merge_blocks): Likewise.
	(block_label): Likewise.
	(try_redirect_by_replacing_jump): Likewise.
	(emit_barrier_after_bb): Likewise.
	(fixup_abnormal_edges): Likewise.
	(record_effective_endpoints): Likewise.
	(relink_block_chain): Likewise.
	(fixup_reorder_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.
	* combine.c (update_cfg_for_uncondjump): Likewise.
	* emit-rtl.c (add_insn_after): Likewise.
	(remove_insn): Likewise.
	(reorder_insns): Likewise.
	(emit_insn_after_1): Likewise.
	* haifa-sched.c (get_ebb_head_tail): Likewise.
	(restore_other_notes): Likewise.
	(move_insn): Likewise.
	(sched_extend_bb): Likewise.
	(fix_jump_move): Likewise.
	* ifcvt.c (noce_process_if_block): Likewise.
	(dead_or_predicable): Likewise.
	* ira.c (update_equiv_regs): Likewise.
	* reg-stack.c (change_stack): Likewise.
	* sel-sched-ir.c (sel_move_insn): Likewise.
	* sel-sched.c (move_nop_to_previous_block): Likewise.

	* config/c6x/c6x.c (hwloop_optimize): Likewise.
	* config/ia64/ia64.c (emit_predicate_relation_info): Likewise.

/
	* rtx-classes-status.txt (TODO): Add SET_BB_HEAD, SET_BB_END,
	SET_BB_HEADER, SET_BB_FOOTER
---
 gcc/basic-block.h      | 15 +++++++---
 gcc/bb-reorder.c       |  4 +--
 gcc/caller-save.c      |  6 ++--
 gcc/cfgbuild.c         |  4 +--
 gcc/cfgcleanup.c       | 14 +++++-----
 gcc/cfgexpand.c        | 22 +++++++--------
 gcc/cfgrtl.c           | 74 +++++++++++++++++++++++++-------------------------
 gcc/combine.c          |  2 +-
 gcc/config/c6x/c6x.c   |  4 +--
 gcc/config/ia64/ia64.c |  6 ++--
 gcc/emit-rtl.c         | 12 ++++----
 gcc/haifa-sched.c      | 18 ++++++------
 gcc/ifcvt.c            |  4 +--
 gcc/ira.c              |  2 +-
 gcc/reg-stack.c        |  2 +-
 gcc/sel-sched-ir.c     |  2 +-
 gcc/sel-sched.c        |  2 +-
 rtx-classes-status.txt |  4 +++
 18 files changed, 104 insertions(+), 93 deletions(-)

diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index 0bf6e87..d27f498 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -368,10 +368,17 @@ struct GTY(()) control_flow_graph {
 \f
 /* Stuff for recording basic block info.  */
 
-#define BB_HEAD(B)      (B)->il.x.head_
-#define BB_END(B)       (B)->il.x.rtl->end_
-#define BB_HEADER(B)    (B)->il.x.rtl->header_
-#define BB_FOOTER(B)    (B)->il.x.rtl->footer_
+/* These macros are currently split into two:
+   one suitable for reading, and for writing.
+   These will become functions in a follow-up patch.  */
+#define BB_HEAD(B)      (((const_basic_block)B)->il.x.head_)
+#define SET_BB_HEAD(B)  (B)->il.x.head_
+#define BB_END(B)       (((const rtl_bb_info *)(B)->il.x.rtl)->end_)
+#define SET_BB_END(B)   (B)->il.x.rtl->end_
+#define BB_HEADER(B)    (((const rtl_bb_info *)(B)->il.x.rtl)->header_)
+#define SET_BB_HEADER(B) (B)->il.x.rtl->header_
+#define BB_FOOTER(B)    (((const rtl_bb_info *)(B)->il.x.rtl)->footer_)
+#define SET_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.  */
diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c
index 61b0cab..2d3e6eb 100644
--- a/gcc/bb-reorder.c
+++ b/gcc/bb-reorder.c
@@ -1757,7 +1757,7 @@ add_labels_and_missing_jumps (vec<edge> crossing_edges)
       gcc_assert (single_succ_p (src));
 
       new_jump = emit_jump_insn_after (gen_jump (label), BB_END (src));
-      BB_END (src) = new_jump;
+      SET_BB_END (src) = new_jump;
       JUMP_LABEL (new_jump) = label;
       LABEL_NUSES (label) += 1;
 
@@ -2188,7 +2188,7 @@ fix_crossing_unconditional_branches (void)
 	      /* Make BB_END for cur_bb be the jump instruction (NOT the
 		 barrier instruction at the end of the sequence...).  */
 
-	      BB_END (cur_bb) = jump_insn;
+	      SET_BB_END (cur_bb) = jump_insn;
 	    }
 	}
     }
diff --git a/gcc/caller-save.c b/gcc/caller-save.c
index 64fd66c..41b3f01 100644
--- a/gcc/caller-save.c
+++ b/gcc/caller-save.c
@@ -921,7 +921,7 @@ save_call_clobbered_regs (void)
 		      if (NEXT_INSN (ins))
 			PREV_INSN (NEXT_INSN (ins)) = ins;
                       if (BB_END (bb) == insn)
-			BB_END (bb) = ins;
+			SET_BB_END (bb) = ins;
 		    }
 		  else
 		    gcc_assert (DEBUG_INSN_P (ins));
@@ -1418,7 +1418,7 @@ insert_one_insn (struct insn_chain *chain, int before_p, int code, rtx pat)
 
       CLEAR_REG_SET (&new_chain->dead_or_set);
       if (chain->insn == BB_HEAD (BASIC_BLOCK_FOR_FN (cfun, chain->block)))
-	BB_HEAD (BASIC_BLOCK_FOR_FN (cfun, chain->block)) = new_chain->insn;
+	SET_BB_HEAD (BASIC_BLOCK_FOR_FN (cfun, chain->block)) = new_chain->insn;
     }
   else
     {
@@ -1438,7 +1438,7 @@ insert_one_insn (struct insn_chain *chain, int before_p, int code, rtx pat)
 		   &new_chain->live_throughout);
       CLEAR_REG_SET (&new_chain->dead_or_set);
       if (chain->insn == BB_END (BASIC_BLOCK_FOR_FN (cfun, chain->block)))
-	BB_END (BASIC_BLOCK_FOR_FN (cfun, chain->block)) = new_chain->insn;
+	SET_BB_END (BASIC_BLOCK_FOR_FN (cfun, chain->block)) = new_chain->insn;
     }
   new_chain->block = chain->block;
   new_chain->is_caller_save_insn = 1;
diff --git a/gcc/cfgbuild.c b/gcc/cfgbuild.c
index ae1f114..76d3a99 100644
--- a/gcc/cfgbuild.c
+++ b/gcc/cfgbuild.c
@@ -467,7 +467,7 @@ find_bb_boundaries (basic_block bb)
 	  fallthru = split_block (bb, PREV_INSN (insn));
 	  if (flow_transfer_insn)
 	    {
-	      BB_END (bb) = flow_transfer_insn;
+	      SET_BB_END (bb) = flow_transfer_insn;
 
 	      /* Clean up the bb field for the insns between the blocks.  */
 	      for (x = NEXT_INSN (flow_transfer_insn);
@@ -504,7 +504,7 @@ find_bb_boundaries (basic_block bb)
      ordinary jump, we need to take care and move basic block boundary.  */
   if (flow_transfer_insn)
     {
-      BB_END (bb) = flow_transfer_insn;
+      SET_BB_END (bb) = flow_transfer_insn;
 
       /* Clean up the bb field for the insns that do not belong to BB.  */
       x = flow_transfer_insn;
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c
index 7c24a6d..b6cb77b 100644
--- a/gcc/cfgcleanup.c
+++ b/gcc/cfgcleanup.c
@@ -726,7 +726,7 @@ merge_blocks_move_successor_nojumps (basic_block a, basic_block b)
   if (tablejump_p (BB_END (b), &label, &table)
       && prev_active_insn (label) == BB_END (b))
     {
-      BB_END (b) = table;
+      SET_BB_END (b) = table;
     }
 
   /* There had better have been a barrier there.  Delete it.  */
@@ -739,7 +739,7 @@ merge_blocks_move_successor_nojumps (basic_block a, basic_block b)
   reorder_insns_nobb (BB_HEAD (b), BB_END (b), BB_END (a));
 
   /* Restore the real end of b.  */
-  BB_END (b) = real_b_end;
+  SET_BB_END (b) = real_b_end;
 
   if (dump_file)
     fprintf (dump_file, "Moved block %d after %d and merged.\n",
@@ -1723,7 +1723,7 @@ outgoing_edges_match (int mode, basic_block bb1, basic_block bb2)
 		  rr.r1 = label1;
 		  rr.r2 = label2;
 		  rr.update_label_nuses = false;
-		  for_each_rtx (&BB_END (bb1), replace_label, &rr);
+		  for_each_rtx (&SET_BB_END (bb1), replace_label, &rr);
 
 		  match = (old_insns_match_p (mode, BB_END (bb1), BB_END (bb2))
 			   == dir_both);
@@ -1737,7 +1737,7 @@ outgoing_edges_match (int mode, basic_block bb1, basic_block bb2)
 		     from the instruction is deleted too.  */
 		  rr.r1 = label2;
 		  rr.r2 = label1;
-		  for_each_rtx (&BB_END (bb1), replace_label, &rr);
+		  for_each_rtx (&SET_BB_END (bb1), replace_label, &rr);
 
 		  return match;
 		}
@@ -2673,13 +2673,13 @@ try_optimize_cfg (int mode)
 				{
 				  if (BB_FOOTER (b))
 				    {
-				      BB_FOOTER (e->src) = BB_FOOTER (b);
-				      BB_FOOTER (b) = NULL;
+				      SET_BB_FOOTER (e->src) = BB_FOOTER (b);
+				      SET_BB_FOOTER (b) = NULL;
 				    }
 				  else
 				    {
 				      start_sequence ();
-				      BB_FOOTER (e->src) = emit_barrier ();
+				      SET_BB_FOOTER (e->src) = emit_barrier ();
 				      end_sequence ();
 				    }
 				}
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index d124d94..df52c08 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2158,9 +2158,9 @@ expand_gimple_cond (basic_block bb, gimple stmt)
     set_curr_insn_location (false_edge->goto_locus);
   emit_jump (label_rtx_for_bb (false_edge->dest));
 
-  BB_END (bb) = last;
+  SET_BB_END (bb) = last;
   if (BARRIER_P (BB_END (bb)))
-    BB_END (bb) = PREV_INSN (BB_END (bb));
+    SET_BB_END (bb) = PREV_INSN (BB_END (bb));
   update_bb_for_insn (bb);
 
   new_bb = create_basic_block (NEXT_INSN (last), get_last_insn (), bb);
@@ -2175,7 +2175,7 @@ expand_gimple_cond (basic_block bb, gimple stmt)
   new_edge->probability = REG_BR_PROB_BASE;
   new_edge->count = new_bb->count;
   if (BARRIER_P (BB_END (new_bb)))
-    BB_END (new_bb) = PREV_INSN (BB_END (new_bb));
+    SET_BB_END (new_bb) = PREV_INSN (BB_END (new_bb));
   update_bb_for_insn (new_bb);
 
   maybe_dump_rtl_for_gimple_stmt (stmt, last2);
@@ -3468,7 +3468,7 @@ expand_gimple_tailcall (basic_block bb, gimple stmt, bool *can_fallthru)
 		 | EDGE_SIBCALL);
   e->probability += probability;
   e->count += count;
-  BB_END (bb) = last;
+  SET_BB_END (bb) = last;
   update_bb_for_insn (bb);
 
   if (NEXT_INSN (last))
@@ -3477,7 +3477,7 @@ expand_gimple_tailcall (basic_block bb, gimple stmt, bool *can_fallthru)
 
       last = BB_END (bb);
       if (BARRIER_P (last))
-	BB_END (bb) = PREV_INSN (last);
+	SET_BB_END (bb) = PREV_INSN (last);
     }
 
   maybe_dump_rtl_for_gimple_stmt (stmt, last2);
@@ -4941,15 +4941,15 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
 
       /* Java emits line number notes in the top of labels.
 	 ??? Make this go away once line number notes are obsoleted.  */
-      BB_HEAD (bb) = NEXT_INSN (last);
+      SET_BB_HEAD (bb) = NEXT_INSN (last);
       if (NOTE_P (BB_HEAD (bb)))
-	BB_HEAD (bb) = NEXT_INSN (BB_HEAD (bb));
+	SET_BB_HEAD (bb) = NEXT_INSN (BB_HEAD (bb));
       note = emit_note_after (NOTE_INSN_BASIC_BLOCK, BB_HEAD (bb));
 
       maybe_dump_rtl_for_gimple_stmt (stmt, last);
     }
   else
-    note = BB_HEAD (bb) = emit_note (NOTE_INSN_BASIC_BLOCK);
+    note = SET_BB_HEAD (bb) = emit_note (NOTE_INSN_BASIC_BLOCK);
 
   NOTE_BASIC_BLOCK (note) = bb;
 
@@ -5232,7 +5232,7 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
     last = PREV_INSN (last);
   if (JUMP_TABLE_DATA_P (last))
     last = PREV_INSN (PREV_INSN (last));
-  BB_END (bb) = last;
+  SET_BB_END (bb) = last;
 
   update_bb_for_insn (bb);
 
@@ -5335,7 +5335,7 @@ construct_exit_block (void)
     return;
   /* While emitting the function end we could move end of the last basic
      block.  */
-  BB_END (prev_bb) = orig_end;
+  SET_BB_END (prev_bb) = orig_end;
   while (NEXT_INSN (head) && NOTE_P (NEXT_INSN (head)))
     head = NEXT_INSN (head);
   /* But make sure exit_block starts with RETURN_LABEL, otherwise the
@@ -5347,7 +5347,7 @@ construct_exit_block (void)
       while (NEXT_INSN (head) != return_label)
 	{
 	  if (!NOTE_P (NEXT_INSN (head)))
-	    BB_END (prev_bb) = NEXT_INSN (head);
+	    SET_BB_END (prev_bb) = NEXT_INSN (head);
 	  head = NEXT_INSN (head);
 	}
     }
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 49faf2e..026fb48 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -152,9 +152,9 @@ delete_insn (rtx insn)
 	      && bb == BLOCK_FOR_INSN (bb_note))
 	    {
 	      reorder_insns_nobb (insn, insn, bb_note);
-	      BB_HEAD (bb) = bb_note;
+	      SET_BB_HEAD (bb) = bb_note;
 	      if (BB_END (bb) == bb_note)
-		BB_END (bb) = insn;
+		SET_BB_END (bb) = insn;
 	    }
 	}
 
@@ -326,8 +326,8 @@ create_basic_block_structure (rtx head, rtx end, rtx bb_note, basic_block after)
   if (NEXT_INSN (end) == bb_note)
     end = bb_note;
 
-  BB_HEAD (bb) = head;
-  BB_END (bb) = end;
+  SET_BB_HEAD (bb) = head;
+  SET_BB_END (bb) = end;
   bb->index = last_basic_block_for_fn (cfun)++;
   bb->flags = BB_NEW | BB_RTL;
   link_block (bb, after);
@@ -400,7 +400,7 @@ rtl_delete_block (basic_block b)
   end = get_last_bb_insn (b);
 
   /* Selectively delete the entire chain.  */
-  BB_HEAD (b) = NULL;
+  SET_BB_HEAD (b) = NULL;
   delete_insn_chain (insn, end, true);
 
 
@@ -744,7 +744,7 @@ rtl_split_block (basic_block bb, void *insnp)
   /* Create the new basic block.  */
   new_bb = create_basic_block (NEXT_INSN (insn), BB_END (bb), bb);
   BB_COPY_PARTITION (new_bb, bb);
-  BB_END (bb) = insn;
+  SET_BB_END (bb) = insn;
 
   /* Redirect the outgoing edges.  */
   new_bb->succs = bb->succs;
@@ -803,7 +803,7 @@ emit_nop_for_unique_locus_between (basic_block a, basic_block b)
   if (!unique_locus_on_edge_between_p (a, b))
     return;
 
-  BB_END (a) = emit_insn_after_noloc (gen_nop (), BB_END (a), a);
+  SET_BB_END (a) = emit_insn_after_noloc (gen_nop (), BB_END (a), a);
   INSN_LOCATION (BB_END (a)) = EDGE_SUCC (a, 0)->goto_locus;
 }
 
@@ -885,8 +885,8 @@ rtl_merge_blocks (basic_block a, basic_block b)
 
   /* Delete everything marked above as well as crap that might be
      hanging out between the two blocks.  */
-  BB_END (a) = a_end;
-  BB_HEAD (b) = b_empty ? NULL_RTX : b_head;
+  SET_BB_END (a) = a_end;
+  SET_BB_HEAD (b) = b_empty ? NULL_RTX : b_head;
   delete_insn_chain (del_first, del_last, true);
 
   /* When not optimizing and the edge is the only place in RTL which holds
@@ -902,8 +902,8 @@ rtl_merge_blocks (basic_block a, basic_block b)
     {
       update_bb_for_insn_chain (a_end, b_debug_end, a);
 
-      BB_END (a) = b_debug_end;
-      BB_HEAD (b) = NULL_RTX;
+      SET_BB_END (a) = b_debug_end;
+      SET_BB_HEAD (b) = NULL_RTX;
     }
   else if (b_end != b_debug_end)
     {
@@ -915,7 +915,7 @@ rtl_merge_blocks (basic_block a, basic_block b)
 	reorder_insns_nobb (NEXT_INSN (a_end), PREV_INSN (b_debug_start),
 			    b_debug_end);
       update_bb_for_insn_chain (b_debug_start, b_debug_end, a);
-      BB_END (a) = b_debug_end;
+      SET_BB_END (a) = b_debug_end;
     }
 
   df_bb_delete (b->index);
@@ -980,7 +980,7 @@ block_label (basic_block block)
 
   if (!LABEL_P (BB_HEAD (block)))
     {
-      BB_HEAD (block) = emit_label_before (gen_label_rtx (), BB_HEAD (block));
+      SET_BB_HEAD (block) = emit_label_before (gen_label_rtx (), BB_HEAD (block));
     }
 
   return BB_HEAD (block);
@@ -1063,7 +1063,7 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout)
 		  if (PREV_INSN (insn))
 		    NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn);
 		  else
-		    BB_FOOTER (src) = NEXT_INSN (insn);
+		    SET_BB_FOOTER (src) = NEXT_INSN (insn);
 		  if (NEXT_INSN (insn))
 		    PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn);
 		}
@@ -1448,7 +1448,7 @@ emit_barrier_after_bb (basic_block bb)
   gcc_assert (current_ir_type () == IR_RTL_CFGRTL
               || current_ir_type () == IR_RTL_CFGLAYOUT);
   if (current_ir_type () == IR_RTL_CFGLAYOUT)
-    BB_FOOTER (bb) = unlink_insn_chain (barrier, barrier);
+    SET_BB_FOOTER (bb) = unlink_insn_chain (barrier, barrier);
 }
 
 /* Like force_nonfallthru below, but additionally performs redirection
@@ -3253,7 +3253,7 @@ fixup_abnormal_edges (void)
 	      e = find_fallthru_edge (bb->succs);
 
 	      stop = NEXT_INSN (BB_END (bb));
-	      BB_END (bb) = insn;
+	      SET_BB_END (bb) = insn;
 
 	      for (insn = NEXT_INSN (insn); insn != stop; insn = next)
 		{
@@ -3449,11 +3449,11 @@ record_effective_endpoints (void)
       rtx end;
 
       if (PREV_INSN (BB_HEAD (bb)) && next_insn != BB_HEAD (bb))
-	BB_HEADER (bb) = unlink_insn_chain (next_insn,
-					      PREV_INSN (BB_HEAD (bb)));
+	SET_BB_HEADER (bb) = unlink_insn_chain (next_insn,
+						PREV_INSN (BB_HEAD (bb)));
       end = skip_insns_after_block (bb);
       if (NEXT_INSN (BB_END (bb)) && BB_END (bb) != end)
-	BB_FOOTER (bb) = unlink_insn_chain (NEXT_INSN (BB_END (bb)), end);
+	SET_BB_FOOTER (bb) = unlink_insn_chain (NEXT_INSN (BB_END (bb)), end);
       next_insn = NEXT_INSN (BB_END (bb));
     }
 
@@ -3613,7 +3613,7 @@ relink_block_chain (bool stay_in_cfglayout_mode)
     {
       bb->aux = NULL;
       if (!stay_in_cfglayout_mode)
-	BB_HEADER (bb) = BB_FOOTER (bb) = NULL;
+	SET_BB_HEADER (bb) = SET_BB_FOOTER (bb) = NULL;
     }
 
   /* Maybe reset the original copy tables, they are not valid anymore
@@ -3906,8 +3906,8 @@ fixup_reorder_chain (void)
 		}
 	      nb = split_edge (e);
 	      if (!INSN_P (BB_END (nb)))
-		BB_END (nb) = emit_insn_after_noloc (gen_nop (), BB_END (nb),
-						     nb);
+		SET_BB_END (nb) = emit_insn_after_noloc (gen_nop (), BB_END (nb),
+							 nb);
 	      INSN_LOCATION (BB_END (nb)) = e->goto_locus;
 
 	      /* If there are other incoming edges to the destination block
@@ -3981,8 +3981,8 @@ fixup_fallthru_exit_predecessor (void)
 	  bb = split_block (bb, NULL)->dest;
 	  bb->aux = c->aux;
 	  c->aux = bb;
-	  BB_FOOTER (bb) = BB_FOOTER (c);
-	  BB_FOOTER (c) = NULL;
+	  SET_BB_FOOTER (bb) = BB_FOOTER (c);
+	  SET_BB_FOOTER (c) = NULL;
 	}
 
       while (c->aux != bb)
@@ -4185,7 +4185,7 @@ cfg_layout_duplicate_bb (basic_block bb)
 	insn = NEXT_INSN (insn);
       insn = duplicate_insn_chain (BB_HEADER (bb), insn);
       if (insn)
-	BB_HEADER (new_bb) = unlink_insn_chain (insn, get_last_insn ());
+	SET_BB_HEADER (new_bb) = unlink_insn_chain (insn, get_last_insn ());
     }
 
   if (BB_FOOTER (bb))
@@ -4195,7 +4195,7 @@ cfg_layout_duplicate_bb (basic_block bb)
 	insn = NEXT_INSN (insn);
       insn = duplicate_insn_chain (BB_FOOTER (bb), insn);
       if (insn)
-	BB_FOOTER (new_bb) = unlink_insn_chain (insn, get_last_insn ());
+	SET_BB_FOOTER (new_bb) = unlink_insn_chain (insn, get_last_insn ());
     }
 
   return new_bb;
@@ -4303,8 +4303,8 @@ cfg_layout_split_block (basic_block bb, void *insnp)
   rtx insn = (rtx) insnp;
   basic_block new_bb = rtl_split_block (bb, insn);
 
-  BB_FOOTER (new_bb) = BB_FOOTER (bb);
-  BB_FOOTER (bb) = NULL;
+  SET_BB_FOOTER (new_bb) = BB_FOOTER (bb);
+  SET_BB_FOOTER (bb) = NULL;
 
   return new_bb;
 }
@@ -4434,7 +4434,7 @@ cfg_layout_delete_block (basic_block bb)
 	      if (PREV_INSN (insn))
 		NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn);
 	      else
-		BB_FOOTER (bb) = NEXT_INSN (insn);
+		SET_BB_FOOTER (bb) = NEXT_INSN (insn);
 	      if (NEXT_INSN (insn))
 		PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn);
 	    }
@@ -4457,7 +4457,7 @@ cfg_layout_delete_block (basic_block bb)
 	}
     }
   if (bb->next_bb != EXIT_BLOCK_PTR_FOR_FN (cfun))
-    to = &BB_HEADER (bb->next_bb);
+    to = &SET_BB_HEADER (bb->next_bb);
   else
     to = &cfg_layout_function_footer;
 
@@ -4569,7 +4569,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
   if (BB_FOOTER (b))
     {
       if (!BB_FOOTER (a))
-	BB_FOOTER (a) = BB_FOOTER (b);
+	SET_BB_FOOTER (a) = SET_BB_FOOTER (b);
       else
 	{
 	  rtx last = BB_FOOTER (a);
@@ -4579,7 +4579,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
 	  NEXT_INSN (last) = BB_FOOTER (b);
 	  PREV_INSN (BB_FOOTER (b)) = last;
 	}
-      BB_FOOTER (b) = NULL;
+      SET_BB_FOOTER (b) = NULL;
     }
 
   /* Move things from b->header before a->footer.
@@ -4588,7 +4588,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
    if (BB_HEADER (b))
      {
       if (! BB_FOOTER (a))
-	BB_FOOTER (a) = BB_HEADER (b);
+	SET_BB_FOOTER (a) = BB_HEADER (b);
       else
 	{
 	  rtx last = BB_HEADER (b);
@@ -4597,9 +4597,9 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
 	    last = NEXT_INSN (last);
 	  NEXT_INSN (last) = BB_FOOTER (a);
 	  PREV_INSN (BB_FOOTER (a)) = last;
-	  BB_FOOTER (a) = BB_HEADER (b);
+	  SET_BB_FOOTER (a) = BB_HEADER (b);
 	}
-      BB_HEADER (b) = NULL;
+      SET_BB_HEADER (b) = NULL;
     }
 
   /* In the case basic blocks are not adjacent, move them around.  */
@@ -4613,7 +4613,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
   else
     {
       insn = BB_HEAD (b);
-      BB_END (a) = BB_END (b);
+      SET_BB_END (a) = BB_END (b);
     }
 
   /* emit_insn_after_noloc doesn't call df_insn_change_bb.
@@ -4624,7 +4624,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
   if (!NOTE_INSN_BASIC_BLOCK_P (insn))
     insn = NEXT_INSN (insn);
   gcc_assert (NOTE_INSN_BASIC_BLOCK_P (insn));
-  BB_HEAD (b) = BB_END (b) = NULL;
+  SET_BB_HEAD (b) = SET_BB_END (b) = NULL;
   delete_insn (insn);
 
   df_bb_delete (b->index);
diff --git a/gcc/combine.c b/gcc/combine.c
index 72bde7a..3cc8f2b 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2393,7 +2393,7 @@ update_cfg_for_uncondjump (rtx insn)
 	    if (PREV_INSN (insn))
 	      NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn);
 	    else
-	      BB_FOOTER (bb) = NEXT_INSN (insn);
+	      SET_BB_FOOTER (bb) = NEXT_INSN (insn);
 	    if (NEXT_INSN (insn))
 	      PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn);
 	  }
diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c
index 339da13..2d73cb8 100644
--- a/gcc/config/c6x/c6x.c
+++ b/gcc/config/c6x/c6x.c
@@ -5827,8 +5827,8 @@ hwloop_optimize (hwloop_info loop)
   NEXT_INSN (PREV_INSN (BB_HEAD (bb))) = orig_vec[0];
   NEXT_INSN (orig_vec[n_insns - 1]) = NEXT_INSN (BB_END (bb));
   PREV_INSN (NEXT_INSN (BB_END (bb))) = orig_vec[n_insns - 1];
-  BB_HEAD (bb) = orig_vec[0];
-  BB_END (bb) = orig_vec[n_insns - 1];
+  SET_BB_HEAD (bb) = orig_vec[0];
+  SET_BB_END (bb) = orig_vec[n_insns - 1];
  undo_splits:
   free_delay_pairs ();
   FOR_BB_INSNS (bb, insn)
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 118e5bf..feee157 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -9617,7 +9617,7 @@ emit_predicate_relation_info (void)
 	    rtx p = gen_rtx_REG (BImode, r);
 	    rtx n = emit_insn_after (gen_pred_rel_mutex (p), head);
 	    if (head == BB_END (bb))
-	      BB_END (bb) = n;
+	      SET_BB_END (bb) = n;
 	    head = n;
 	  }
     }
@@ -9639,9 +9639,9 @@ emit_predicate_relation_info (void)
 	      rtx b = emit_insn_before (gen_safe_across_calls_all (), insn);
 	      rtx a = emit_insn_after (gen_safe_across_calls_normal (), insn);
 	      if (BB_HEAD (bb) == insn)
-		BB_HEAD (bb) = b;
+		SET_BB_HEAD (bb) = b;
 	      if (BB_END (bb) == insn)
-		BB_END (bb) = a;
+		SET_BB_END (bb) = a;
 	    }
 
 	  if (insn == BB_END (bb))
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 3bf2ff7..2c3d8f7 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -3984,7 +3984,7 @@ add_insn_after (rtx insn, rtx after, basic_block bb)
 	  /* Avoid clobbering of structure when creating new BB.  */
 	  && !BARRIER_P (insn)
 	  && !NOTE_INSN_BASIC_BLOCK_P (insn))
-	BB_END (bb) = insn;
+	SET_BB_END (bb) = insn;
     }
 }
 
@@ -4113,10 +4113,10 @@ remove_insn (rtx insn)
 	  /* Never ever delete the basic block note without deleting whole
 	     basic block.  */
 	  gcc_assert (!NOTE_P (insn));
-	  BB_HEAD (bb) = next;
+	  SET_BB_HEAD (bb) = next;
 	}
       if (BB_END (bb) == insn)
-	BB_END (bb) = prev;
+	SET_BB_END (bb) = prev;
     }
 }
 
@@ -4216,12 +4216,12 @@ reorder_insns (rtx from, rtx to, rtx after)
 	  && (bb2 = BLOCK_FOR_INSN (from)))
 	{
 	  if (BB_END (bb2) == to)
-	    BB_END (bb2) = prev;
+	    SET_BB_END (bb2) = prev;
 	  df_set_bb_dirty (bb2);
 	}
 
       if (BB_END (bb) == after)
-	BB_END (bb) = to;
+	SET_BB_END (bb) = to;
 
       for (x = from; x != NEXT_INSN (to); x = NEXT_INSN (x))
 	if (!BARRIER_P (x))
@@ -4389,7 +4389,7 @@ emit_insn_after_1 (rtx first, rtx after, basic_block bb)
 	  df_insn_rescan (last);
 	}
       if (BB_END (bb) == after)
-	BB_END (bb) = last;
+	SET_BB_END (bb) = last;
     }
   else
     for (last = first; NEXT_INSN (last); last = NEXT_INSN (last))
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index 0e1800a..b3482e3 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -4757,7 +4757,7 @@ get_ebb_head_tail (basic_block beg, basic_block end, rtx *headp, rtx *tailp)
 		reorder_insns_nobb (note, note, end_tail);
 
 		if (end_tail == BB_END (end))
-		  BB_END (end) = note;
+		  SET_BB_END (end) = note;
 
 		if (BLOCK_FOR_INSN (note) != end)
 		  df_insn_change_bb (note, end);
@@ -4816,7 +4816,7 @@ restore_other_notes (rtx head, basic_block head_bb)
       NEXT_INSN (note_list) = head;
 
       if (BLOCK_FOR_INSN (head) != head_bb)
-	BB_END (head_bb) = note_list;
+	SET_BB_END (head_bb) = note_list;
 
       head = note_head;
     }
@@ -5215,7 +5215,7 @@ move_insn (rtx insn, rtx last, rtx nt)
 
 	  gcc_assert (BLOCK_FOR_INSN (PREV_INSN (insn)) == bb);
 
-	  BB_END (bb) = PREV_INSN (insn);
+	  SET_BB_END (bb) = PREV_INSN (insn);
 	}
 
       gcc_assert (BB_END (bb) != last);
@@ -5264,7 +5264,7 @@ move_insn (rtx insn, rtx last, rtx nt)
 
       /* Update BB_END, if needed.  */
       if (BB_END (bb) == last)
-	BB_END (bb) = insn;
+	SET_BB_END (bb) = insn;
     }
 
   SCHED_GROUP_P (insn) = 0;
@@ -7552,7 +7552,7 @@ sched_extend_bb (void)
       rtx note = emit_note_after (NOTE_INSN_DELETED, end);
       /* Make note appear outside BB.  */
       set_block_for_insn (note, NULL);
-      BB_END (EXIT_BLOCK_PTR_FOR_FN (cfun)->prev_bb) = end;
+      SET_BB_END (EXIT_BLOCK_PTR_FOR_FN (cfun)->prev_bb) = end;
     }
 }
 
@@ -8236,18 +8236,18 @@ fix_jump_move (rtx jump)
 
   if (!NOTE_INSN_BASIC_BLOCK_P (BB_END (jump_bb_next)))
     /* if jump_bb_next is not empty.  */
-    BB_END (jump_bb) = BB_END (jump_bb_next);
+    SET_BB_END (jump_bb) = BB_END (jump_bb_next);
 
   if (BB_END (bb) != PREV_INSN (jump))
     /* Then there are instruction after jump that should be placed
        to jump_bb_next.  */
-    BB_END (jump_bb_next) = BB_END (bb);
+    SET_BB_END (jump_bb_next) = BB_END (bb);
   else
     /* Otherwise jump_bb_next is empty.  */
-    BB_END (jump_bb_next) = NEXT_INSN (BB_HEAD (jump_bb_next));
+    SET_BB_END (jump_bb_next) = NEXT_INSN (BB_HEAD (jump_bb_next));
 
   /* To make assertion in move_insn happy.  */
-  BB_END (bb) = PREV_INSN (jump);
+  SET_BB_END (bb) = PREV_INSN (jump);
 
   update_bb_for_insn (jump_bb_next);
 }
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index 2ca2278..d27b5fa 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -2594,7 +2594,7 @@ noce_process_if_block (struct noce_if_info *if_info)
 	  rtx note;
 
 	  if (else_bb && insn_b == BB_END (else_bb))
-	    BB_END (else_bb) = PREV_INSN (insn_b);
+	    SET_BB_END (else_bb) = PREV_INSN (insn_b);
 	  reorder_insns (insn_b, insn_b, PREV_INSN (jump));
 
 	  /* If there was a REG_EQUAL note, delete it since it may have been
@@ -4359,7 +4359,7 @@ dead_or_predicable (basic_block test_bb, basic_block merge_bb,
       rtx insn;
 
       if (end == BB_END (merge_bb))
-	BB_END (merge_bb) = PREV_INSN (head);
+	SET_BB_END (merge_bb) = PREV_INSN (head);
 
       /* PR 21767: when moving insns above a conditional branch, the REG_EQUAL
 	 notes being moved might become invalid.  */
diff --git a/gcc/ira.c b/gcc/ira.c
index 26d017e..bad6759 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -3863,7 +3863,7 @@ update_equiv_regs (void)
 		      REG_LIVE_LENGTH (regno) = 2;
 
 		      if (insn == BB_HEAD (bb))
-			BB_HEAD (bb) = PREV_INSN (insn);
+			SET_BB_HEAD (bb) = PREV_INSN (insn);
 
 		      ira_reg_equiv[regno].init_insns
 			= gen_rtx_INSN_LIST (VOIDmode, new_insn, NULL_RTX);
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c
index 692abc5..e0d5d70 100644
--- a/gcc/reg-stack.c
+++ b/gcc/reg-stack.c
@@ -2600,7 +2600,7 @@ change_stack (rtx insn, stack_ptr old, stack_ptr new_stack, enum emit_where wher
     }
 
   if (update_end)
-    BB_END (current_block) = PREV_INSN (insn);
+    SET_BB_END (current_block) = PREV_INSN (insn);
 }
 \f
 /* Print stack configuration.  */
diff --git a/gcc/sel-sched-ir.c b/gcc/sel-sched-ir.c
index 3cba326..7eccdf9 100644
--- a/gcc/sel-sched-ir.c
+++ b/gcc/sel-sched-ir.c
@@ -1432,7 +1432,7 @@ sel_move_insn (expr_t expr, int seqno, insn_t after)
   /* Update links from insn to bb and vice versa.  */
   df_insn_change_bb (insn, bb);
   if (BB_END (bb) == after)
-    BB_END (bb) = insn;
+    SET_BB_END (bb) = insn;
 
   prepare_insn_expr (insn, seqno);
   return insn;
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c
index 0c864ac..bfbd2fe 100644
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -5209,7 +5209,7 @@ move_nop_to_previous_block (insn_t nop, basic_block prev_bb)
   NEXT_INSN (nop) = note;
   PREV_INSN (next_insn) = note;
 
-  BB_END (prev_bb) = nop;
+  SET_BB_END (prev_bb) = nop;
   BLOCK_FOR_INSN (nop) = prev_bb;
 }
 
diff --git a/rtx-classes-status.txt b/rtx-classes-status.txt
index 9971853..c1039bc 100644
--- a/rtx-classes-status.txt
+++ b/rtx-classes-status.txt
@@ -7,3 +7,7 @@ Phase 3: per-file commits within "config" subdirs: TODO
 Phase 4: removal of "scaffolding":                 TODO
 Phase 5: additional rtx_def subclasses:            TODO
 Phase 6: use extra rtx_def subclasses:             TODO
+
+TODO: "Scaffolding" to be removed
+=================================
+* SET_BB_HEAD, SET_BB_END, SET_BB_HEADER, SET_BB_FOOTER
-- 
1.8.5.3

  parent reply	other threads:[~2014-08-06 17:19 UTC|newest]

Thread overview: 433+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-06 17:19 [PATCH 000/236] Introduce rtx subclasses David Malcolm
2014-08-06 17:19 ` [PATCH 018/236] Strengthen return types of various {next|prev}_*insn from rtx to rtx_insn * David Malcolm
2014-08-12 21:59   ` Jeff Law
2014-08-19 17:42     ` David Malcolm
2014-08-06 17:19 ` [PATCH 054/236] calls.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 056/236] cfgbuild.c: " David Malcolm
2014-08-06 17:19 ` [PATCH 080/236] haifa-sched.c: " David Malcolm
2014-08-06 17:19 ` [PATCH 013/236] DEP_PRO/DEP_CON scaffolding David Malcolm
2014-08-12 21:21   ` Jeff Law
2014-08-19 15:36     ` David Malcolm
2014-08-06 17:19 ` [PATCH 042/236] try_split returns an rtx_insn David Malcolm
2014-08-13 18:06   ` Jeff Law
2014-08-21  8:54     ` David Malcolm
2014-08-06 17:19 ` [PATCH 019/236] Strengthen return type of gen_label_rtx David Malcolm
2014-08-12 22:00   ` Jeff Law
2014-08-19 18:14     ` David Malcolm
2014-08-06 17:19 ` David Malcolm [this message]
2014-08-12 21:15   ` [PATCH 008/236] Split BB_HEAD et al into BB_HEAD/SET_BB_HEAD variants Jeff Law
2014-08-18 20:52     ` David Malcolm
2014-08-06 17:19 ` [PATCH 001/236] Convert lab_rtx_for_bb from pointer_map_t to pointer_map<rtx> David Malcolm
2014-08-12 20:50   ` Jeff Law
2014-08-12 21:16     ` Trevor Saunders
2014-08-13  0:48       ` David Malcolm
2014-08-13  2:51         ` Jeff Law
2014-08-06 17:19 ` [PATCH 007/236] New function: for_each_rtx_in_insn David Malcolm
2014-08-12 21:08   ` Jeff Law
2014-08-14 21:08     ` David Malcolm
2014-08-14 21:36       ` Richard Sandiford
2014-08-15  5:19         ` Jeff Law
2014-08-18 20:27     ` David Malcolm
2014-08-06 17:19 ` [PATCH 058/236] cfgloop.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 027/236] asan_emit_stack_protection returns an insn David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:48     ` David Malcolm
2014-08-06 17:19 ` [PATCH 021/236] entry_of_function " David Malcolm
2014-08-13  3:04   ` Jeff Law
2014-08-19 18:45     ` David Malcolm
2014-08-06 17:19 ` [PATCH 004/236] PHASE 1: Initial "scaffolding" commits David Malcolm
2014-08-12 20:55   ` Jeff Law
2014-08-18 19:42     ` David Malcolm
2014-08-06 17:19 ` [PATCH 047/236] PHASE 2: Per-file commits in main source directory David Malcolm
2014-08-13 18:10   ` Jeff Law
2014-08-21 15:09     ` David Malcolm
2014-08-06 17:19 ` [PATCH 040/236] Use rtx_insn internally within generated functions David Malcolm
2014-08-13 18:03   ` Jeff Law
2014-08-21  7:50     ` David Malcolm
2014-08-06 17:19 ` [PATCH 063/236] compare-elim.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 012/236] Convert DF_REF_INSN to a function for now David Malcolm
2014-08-12 21:20   ` Jeff Law
2014-08-13 20:32     ` David Malcolm
2014-08-13 20:34       ` Jeff Law
2014-08-14  0:14         ` David Malcolm
2014-08-14  2:56           ` Jeff Law
2014-08-14 20:23             ` David Malcolm
2014-08-19 15:22     ` David Malcolm
2014-08-06 17:19 ` [PATCH 034/236] next_cc0_user and prev_cc0_setter scaffolding David Malcolm
2014-08-13 17:56   ` Jeff Law
2014-08-19 21:12     ` David Malcolm
2014-08-06 17:19 ` [PATCH 006/236] Introduce rtx_insn subclass of rtx_def David Malcolm
2014-08-12 21:06   ` Jeff Law
2014-08-18 20:05     ` David Malcolm
2014-08-06 17:19 ` [PATCH 002/236] JUMP_LABEL is not always a LABEL David Malcolm
2014-08-12 20:52   ` Jeff Law
2014-08-06 17:19 ` [PATCH 009/236] Replace BB_HEAD et al macros with functions David Malcolm
2014-08-12 21:16   ` Jeff Law
2014-08-19  0:32     ` David Malcolm
2014-08-23 18:49   ` [BUILDROBOT][PATCH] frv-linux fallout (was: [PATCH 009/236] Replace BB_HEAD et al macros with functions) Jan-Benedict Glaw
2014-08-25 14:11     ` David Malcolm
2014-08-25 19:29       ` Mike Stump
2014-08-25 19:46         ` Steven Bosscher
2014-08-25 19:52           ` Mike Stump
2014-08-06 17:20 ` [PATCH 111/236] sched-deps.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 120/236] valtrack.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 090/236] loop-unroll.c: Use rtx_insn (also touches basic-block.h) David Malcolm
2014-08-06 17:20 ` [PATCH 137/236] config/iq2000: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 142/236] config/nds32: " David Malcolm
2014-08-24  3:25   ` Chung-Ju Wu
2014-08-06 17:20 ` [PATCH 175/236] Remove DEP_PRO/CON scaffolding David Malcolm
2014-08-06 17:20 ` [PATCH 020/236] Return rtx_insn from get_insns/get_last_insn David Malcolm
2014-08-12 22:01   ` Jeff Law
2014-08-19 18:26     ` David Malcolm
2014-08-06 17:20 ` [PATCH 145/236] config/rs6000: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 066/236] dce.c: Use rtx subclasses David Malcolm
2014-08-06 17:20 ` [PATCH 144/236] config/picochip: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 116/236] shrink-wrap.*: Use rtx_insn (touches config/i386/i386.c) David Malcolm
2014-08-06 17:20 ` [PATCH 151/236] config/spu/spu.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 132/236] config/epiphany: " David Malcolm
2014-08-06 17:20 ` [PATCH 123/236] web.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 104/236] regcprop.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 092/236] lra: use rtx_insn David Malcolm
2014-08-13 20:20   ` Jeff Law
2014-08-06 17:20 ` [PATCH 003/236] config/mn10300: Fix missing PATTERN in PARALLEL handling David Malcolm
2014-08-12 20:53   ` Jeff Law
2014-08-19 18:02   ` Richard Henderson
2014-08-27 15:51     ` David Malcolm
2014-08-27 16:11       ` Richard Henderson
2014-08-27 16:35         ` David Malcolm
2014-08-27 16:42           ` Richard Henderson
2014-08-06 17:20 ` [PATCH 087/236] loop-doloop.c: Use rtx_insn in a few places David Malcolm
2014-08-06 17:20 ` [PATCH 109/236] resource.c: Use rtx_insn David Malcolm
2014-08-14  2:51   ` Jeff Law
2014-08-06 17:20 ` [PATCH 030/236] Convert various rtx to rtx_note * David Malcolm
2014-08-19 20:14   ` David Malcolm
2014-08-06 17:20 ` [PATCH 125/236] config/aarch64/aarch64.c: Use rtx_insn David Malcolm
2014-08-13 15:14   ` Richard Earnshaw
2014-08-06 17:20 ` [PATCH 068/236] df-*.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 049/236] asan.c: strengthen some rtx locals David Malcolm
2014-08-13 18:11   ` Jeff Law
2014-08-06 17:20 ` [PATCH 084/236] internal-fn.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:20 ` [PATCH 048/236] alias.c: Use rtx_insn David Malcolm
2014-08-13 18:11   ` Jeff Law
2014-08-06 17:20 ` [PATCH 077/236] fwprop.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 099/236] predict.*: Use rtx_insn (also touches function.c and config/cris/cris.c) David Malcolm
2014-08-06 17:21 ` [PATCH 232/236] Use rtx_insn in various places in resource.[ch] David Malcolm
2014-08-06 17:21 ` [PATCH 212/236] Use rtx_expr_list for expr_status.x_forced_labels David Malcolm
2014-08-07 11:32   ` Bernd Schmidt
2014-08-07 15:23     ` David Malcolm
2014-08-12 21:24     ` Jeff Law
2014-08-06 17:21 ` [PATCH 186/236] Various condition-handling calls David Malcolm
2014-08-06 17:21 ` [PATCH 177/236] Tighten up params of create_basic_block_structure David Malcolm
2014-08-06 17:21 ` [PATCH 223/236] inside_basic_block_p requires a const rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 206/236] jump.c: Use rtx_sequence David Malcolm
2014-08-06 17:21 ` [PATCH 140/236] config/microblaze/microblaze.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-13 16:21   ` Michael Eager
2014-08-06 17:21 ` [PATCH 202/236] dwarf2cfi.c: Use rtx_sequence David Malcolm
2014-08-06 17:21 ` [PATCH 219/236] Make SET_NEXT_INSN/SET_PREV_INSN require an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 130/236] config/bfin: Use rtx_insn David Malcolm
2014-08-14 19:52   ` Jeff Law
2014-08-06 17:21 ` [PATCH 171/236] du_chain.insn is an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 189/236] Various scheduling strengthenings David Malcolm
2014-08-06 17:21 ` [PATCH 162/236] delete_insn_and_edges takes an rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 201/236] Introduce rtx_sequence subclass of rtx_def David Malcolm
2014-08-06 17:21 ` [PATCH 217/236] Add JUMP_LABEL_AS_INSN David Malcolm
2014-08-06 17:21 ` [PATCH 182/236] get_last_insn_anywhere returns an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 170/236] Eliminate BB_NOTE_LIST scaffolding David Malcolm
2014-08-06 17:21 ` [PATCH 191/236] Remove DF_REF_INSN scaffolding David Malcolm
2014-08-06 17:21 ` [PATCH 159/236] Convert edge_def.insns.r to rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 236/236] END OF PATCHES: Delete rtx-classes-status.txt David Malcolm
2014-08-19 21:05   ` Richard Henderson
2014-08-06 17:21 ` [PATCH 200/236] Use rtx_insn_list in various places David Malcolm
2014-08-06 17:21 ` [PATCH 107/236] regstat.c: Use rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 166/236] shorten_branches takes an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 203/236] except.c: Use rtx_sequence David Malcolm
2014-08-06 17:22 ` [PATCH 102/236] ree.c: Use rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 215/236] Use rtx_expr_list in various places David Malcolm
2014-08-06 17:22 ` [PATCH 209/236] sched-vis.c: Use rtx_sequence David Malcolm
2014-08-06 17:22 ` [PATCH 156/236] PHASE 4: Removal of scaffolding David Malcolm
2014-08-15  5:30   ` Jeff Law
2014-08-16  0:35     ` David Malcolm
2014-08-06 17:22 ` [PATCH 225/236] Work towards NEXT_INSN/PREV_INSN requiring insns as their params David Malcolm
2014-08-19 20:57   ` Richard Henderson
2014-08-19 21:38     ` David Malcolm
2014-08-19 22:15       ` Bootstrap failure/ ICE in rtl.h (was: Re: [PATCH 225/236] Work towardgmane.comp.gcc.patchess NEXT_INSN/PREV_INSN requiring insns as their params) Tobias Burnus
2014-08-20  1:59         ` David Malcolm
2014-08-20  0:05       ` [PATCH 225/236] Work towards NEXT_INSN/PREV_INSN requiring insns as their params Richard Henderson
2014-08-25 14:25       ` Jeff Law
2014-08-26 17:18         ` David Malcolm
2014-08-28 16:38           ` Richard Henderson
2014-08-29  0:09           ` H.J. Lu
2014-08-29  0:50             ` David Malcolm
2014-08-29  1:02               ` Richard Henderson
2014-08-06 17:22 ` [PATCH 165/236] struct haifa_sched_info: prev_head and next_tail David Malcolm
2014-08-06 17:22 ` [PATCH 227/236] find_first_parameter_load params and return type David Malcolm
2014-08-06 17:22 ` [PATCH 224/236] insn_current_reference_address takes an rtx_insn David Malcolm
2014-08-19 20:58   ` Richard Henderson
2014-08-06 17:22 ` [PATCH 229/236] NEXT_INSN and PREV_INSN take a const rtx_insn David Malcolm
2014-08-19 21:04   ` Richard Henderson
2014-08-06 17:22 ` [PATCH 233/236] dfa_clear_single_insn_cache takes an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 220/236] Strengthen return_label and naked_return_label to rtx_code_label * David Malcolm
2014-08-19 20:51   ` Richard Henderson
2014-08-06 17:22 ` [PATCH 185/236] Use rtx_insn in more places in fwprop.c David Malcolm
2014-08-06 17:22 ` [PATCH 213/236] rtl_data.x_nonlocal_goto_handler_labels becomes an rtx_expr_list David Malcolm
2014-08-06 17:22 ` [PATCH 205/236] function.c: Use rtx_sequence David Malcolm
2014-08-15 22:25   ` Jeff Law
2014-08-06 17:22 ` [PATCH 222/236] Use rtx_insn in more places in dwarf2cfi.c David Malcolm
2014-08-19 20:56   ` Richard Henderson
2014-08-19 21:31     ` David Malcolm
2014-08-06 17:22 ` [PATCH 194/236] Use rtx_insn for various target.def hooks David Malcolm
2014-08-15 22:21   ` Jeff Law
2014-08-06 17:22 ` [PATCH 192/236] Tweak to dse.c David Malcolm
2014-08-06 17:22 ` [PATCH 164/236] Add rtx_jump_table_data::get_labels method David Malcolm
2014-08-06 17:22 ` [PATCH 032/236] emit_* functions return rtx_insn David Malcolm
2014-08-13 17:53   ` Jeff Law
2014-08-19 20:39     ` David Malcolm
2014-08-06 17:22 ` [PATCH 230/236] Make INSN_HAS_LOCATION require an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 226/236] Delete find_last_value David Malcolm
2014-08-06 17:37 ` [PATCH 121/236] varasm.c: Use rtx_insn David Malcolm
2014-08-06 17:37 ` [PATCH 028/236] cfgexpand.c: " David Malcolm
2014-08-13 13:42   ` Jeff Law
2014-08-19 19:53     ` David Malcolm
2014-08-06 17:37 ` [PATCH 168/236] final_start_function takes an rtx_insn David Malcolm
2014-08-06 17:37 ` [PATCH 108/236] reload: Use rtx_insn (also touches caller-save.c and config/arc/arc) David Malcolm
2014-08-14  2:43   ` Jeff Law
2014-08-06 17:37 ` [PATCH 082/236] ifcvt.c: Use rtx_insn David Malcolm
2014-08-06 17:37 ` [PATCH 134/236] config/i386/i386.c: Use rtx_code_label David Malcolm
2014-08-06 17:37 ` [PATCH 017/236] Add subclasses for the various kinds of instruction David Malcolm
2014-08-13  3:07   ` Jeff Law
2014-08-19 17:01     ` David Malcolm
2014-08-06 17:37 ` [PATCH 025/236] make_insn_raw returns an rtx_insn David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:38     ` David Malcolm
2014-08-06 17:37 ` [PATCH 086/236] jump.c: Use rtx_insn in a few places (also touches rtl.h and cfgexpand.c) David Malcolm
2014-08-06 17:37 ` [PATCH 157/236] struct eh_landing_pad_d: field "landing_pad" is an rtx_code_label David Malcolm
2014-08-06 17:38 ` [PATCH 026/236] bb_note returns a rtx_note * David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:44     ` David Malcolm
2014-08-06 17:38 ` [PATCH 187/236] duplicate_insn_chain accepts rtx_insn David Malcolm
2014-08-06 17:38 ` [PATCH 005/236] Introduce as_a_nullable David Malcolm
2014-08-12 21:03   ` Jeff Law
2014-08-13 10:01   ` Martin Jambor
2014-08-13 10:07     ` Richard Biener
2014-08-13 13:48       ` Jeff Law
2014-08-18 19:53         ` David Malcolm
2014-08-13 19:58       ` David Malcolm
2014-08-06 17:38 ` [PATCH 138/236] config/m68k: Use rtx_insn David Malcolm
2014-08-06 17:38 ` [PATCH 067/236] ddg: " David Malcolm
2014-08-06 17:38 ` [PATCH 112/236] sched-ebb.c: Use rtx_insn (requires touching sched-int.h and config/c6x/c6x.c) David Malcolm
2014-08-06 17:38 ` [PATCH 193/236] cselib (also touches sched-deps.c) David Malcolm
2014-08-06 17:38 ` [PATCH 061/236] combine.c: Use rtx_insn David Malcolm
2014-08-13 18:39   ` Jeff Law
2014-08-13 18:46     ` Jeff Law
2014-08-06 17:39 ` [PATCH 199/236] Introduce rtx_insn_list subclass of rtx_def David Malcolm
2014-08-07  1:31   ` Trevor Saunders
2014-08-07 15:36     ` David Malcolm
2014-08-30  6:24       ` Jeff Law
2014-08-06 17:39 ` [PATCH 218/236] Use rtx subclasses in more places in reorg.c David Malcolm
2014-08-06 17:39 ` [PATCH 231/236] Make insn_addresses_new require an rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 103/236] reg-stack.c: Use rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 096/236] optabs.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:39 ` [PATCH 181/236] Strengthen fields in struct sequence_stack and struct emit_status David Malcolm
2014-08-06 17:39 ` [PATCH 155/236] config/xtensa: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:39 ` [PATCH 127/236] config/arc: Use rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 149/236] config/sh: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 21:04   ` Oleg Endo
2014-08-06 17:40 ` [PATCH 141/236] config/mips: " David Malcolm
2014-08-06 17:40 ` [PATCH 016/236] BND_TO scaffolding David Malcolm
2014-08-12 21:22   ` Jeff Law
2014-08-19 16:43     ` David Malcolm
2014-08-06 17:40 ` [PATCH 143/236] config/pa: Use rtx_insn David Malcolm
2014-08-06 17:40 ` [PATCH 065/236] cse.c: " David Malcolm
2014-08-06 17:40 ` [PATCH 150/236] config/sparc: " David Malcolm
2014-08-06 17:40 ` [PATCH 085/236] ira: Use rtx_insn in various places David Malcolm
2014-08-06 17:40 ` [PATCH 055/236] caller-save.c: Use rtx_insn David Malcolm
2014-08-06 17:40 ` [PATCH 074/236] expr.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:40 ` [PATCH 169/236] Strengthen haifa_sched_info callbacks and 3 scheduler hooks David Malcolm
2014-08-15 22:04   ` Jeff Law
2014-08-16  0:52     ` David Malcolm
2014-08-06 17:41 ` [PATCH 122/236] var-tracking.c: Use rtx_insn David Malcolm
2014-08-06 17:41 ` [PATCH 076/236] function.c: " David Malcolm
2014-08-06 17:41 ` [PATCH 136/236] config/ia64/ia64.c: " David Malcolm
2014-08-06 17:41 ` [PATCH 114/236] sel-sched.c: " David Malcolm
2014-08-06 17:41 ` [PATCH 204/236] final.c: Use rtx_sequence David Malcolm
2014-08-15 22:24   ` Jeff Law
2014-08-15 22:39     ` Trevor Saunders
2014-08-16  1:00       ` David Malcolm
2014-08-25 17:25         ` Jeff Law
2014-08-25 17:22       ` Jeff Law
2014-08-06 17:41 ` [PATCH 117/236] stack-ptr-mod.c: Use rtx_insn David Malcolm
2014-08-06 17:41 ` [PATCH 178/236] Remove BB_HEAD, BB_END, BB_HEADER scaffolding David Malcolm
2014-08-06 17:41 ` [PATCH 146/236] config/rx: Use rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 179/236] cselib_record_sets_hook takes an rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 081/236] hw-doloop: Use rtx_insn (touches config/bfin/bfin.c) David Malcolm
2014-08-06 17:42 ` [PATCH 015/236] BB_NOTE_LIST scaffolding David Malcolm
2014-08-12 21:22   ` Jeff Law
2014-08-19 16:06     ` David Malcolm
2014-08-06 17:42 ` [PATCH 221/236] Add insn method to rtx_expr_list David Malcolm
2014-08-19 20:41   ` Richard Henderson
2014-08-25 14:22     ` Jeff Law
2014-08-26 15:54       ` [PATCH 0/3] Updated patches to eliminate need for rtx_expr_list::insn (was Re: [PATCH 221/236] Add insn method to rtx_expr_list) David Malcolm
2014-08-26 15:54         ` [PATCH 1/3] Convert nonlocal_goto_handler_labels from an EXPR_LIST to an INSN_LIST David Malcolm
2014-08-26 15:54         ` [PATCH 3/3] Use rtx_insn in more places in dwarf2cfi.c David Malcolm
2014-08-26 15:54         ` [PATCH 2/3] Convert forced_labels from an EXPR_LIST to an INSN_LIST David Malcolm
2014-08-26 16:25         ` [PATCH 0/3] Updated patches to eliminate need for rtx_expr_list::insn (was Re: [PATCH 221/236] Add insn method to rtx_expr_list) Richard Henderson
2014-08-06 17:42 ` [PATCH 023/236] delete_trivially_dead_insns works on insns David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:28     ` David Malcolm
2014-08-06 17:42 ` [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn David Malcolm
2014-08-13 13:44   ` Jeff Law
2014-08-13 17:11     ` David Malcolm
2014-08-13 17:13       ` Jeff Law
2014-08-26  7:03         ` [COMMITTED] Update rs6000.c's pass_analyze_swaps to use rtx_insn [was Re: [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn] David Malcolm
2014-08-19 19:58     ` [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn David Malcolm
2014-08-06 17:42 ` [PATCH 088/236] loop-invariant.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:42 ` [PATCH 044/236] Pass "insn" as an rtx_insn within generated get_attr_ fns in insn-attrtab.c David Malcolm
2014-08-13 18:07   ` Jeff Law
2014-08-21 10:14     ` David Malcolm
2014-08-06 17:42 ` [PATCH 211/236] Introduce rtx_expr_list subclass of rtx_def David Malcolm
2014-08-06 17:42 ` [PATCH 234/236] Strengthen params to active_insn_between David Malcolm
2014-08-06 17:42 ` [PATCH 195/236] Convert PATTERN from a macro to a pair of inline functions David Malcolm
2014-08-06 18:03   ` Jakub Jelinek
2014-08-06 20:00     ` David Malcolm
2014-08-06 17:42 ` [PATCH 214/236] rtl_data.x_stack_slot_list becomes an rtx_expr_list David Malcolm
2014-08-06 17:42 ` [PATCH 128/236] config/arm: Use rtx_insn and rtx_code_label David Malcolm
2014-08-13 15:21   ` Richard Earnshaw
2014-08-06 17:42 ` [PATCH 041/236] Debug hooks: use " David Malcolm
2014-08-13 18:05   ` Jeff Law
2014-08-21  8:21     ` David Malcolm
2014-08-06 17:42 ` [PATCH 131/236] config/c6x: Use rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 036/236] get_last_bb_insn returns an rtx_insn David Malcolm
2014-08-13 17:57   ` Jeff Law
2014-08-21  0:03     ` David Malcolm
2014-08-06 17:42 ` [PATCH 133/236] config/h8300: Use rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 069/236] dwarf2cfi.c: " David Malcolm
2014-08-06 17:42 ` [PATCH 045/236] define_bypass guard functions take a pair of rtx_insn David Malcolm
2014-08-13 18:07   ` Jeff Law
2014-08-21 14:02     ` David Malcolm
2014-08-06 17:42 ` [PATCH 207/236] reorg.c: Use rtx_sequence David Malcolm
2014-08-15 22:26   ` Jeff Law
2014-08-06 17:42 ` [PATCH 010/236] Split NEXT_INSN/PREV_INSN into lvalue and rvalue forms David Malcolm
2014-08-12 21:17   ` Jeff Law
2014-08-19  0:56     ` David Malcolm
2014-08-06 17:42 ` [PATCH 071/236] except.*: Use rtx_insn (also touches function.h) David Malcolm
2014-08-06 17:42 ` [PATCH 124/236] PHASE 3: Per-config subdir commits David Malcolm
2014-08-14  3:02   ` Jeff Law
2014-08-06 17:43 ` [PATCH 078/236] genpeep.c: peephole requires an rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 035/236] Return types of unlink_insn_chain and duplicate_insn_chain David Malcolm
2014-08-13 17:56   ` Jeff Law
2014-08-19 21:23     ` David Malcolm
2014-08-20  8:20   ` Andreas Schwab
2014-08-20 10:22     ` David Malcolm
2014-08-20 16:12       ` PR62203 (was Re: [PATCH 035/236] Return types of unlink_insn_chain and duplicate_insn_chain) David Malcolm
2014-08-20 17:42         ` David Malcolm
2014-08-06 17:43 ` [PATCH 196/236] Convert various INSN accessors in rtl.h to inline functions David Malcolm
2014-08-06 17:43 ` [PATCH 115/236] sel-sched-ir.c: Use rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 110/236] rtlanal.c: " David Malcolm
2014-08-06 17:43 ` [PATCH 148/236] config/score/score.c: " David Malcolm
2014-08-06 17:43 ` [PATCH 070/236] dwarf2out.c: " David Malcolm
2014-08-06 17:43 ` [PATCH 098/236] postreload.c: Use rtx_insn (also touches rtl.h and cprop.c) David Malcolm
2014-08-06 17:43 ` [PATCH 161/236] reorder_insns requires rtx_insn * David Malcolm
2014-08-06 17:43 ` [PATCH 235/236] Make next_insn and previous_insn require an " David Malcolm
2014-08-06 17:43 ` [PATCH 180/236] Params of add_insn and unlink_insn_chain David Malcolm
2014-08-06 17:43 ` [PATCH 216/236] PHASE 6: Use extra rtx_def subclasses David Malcolm
2014-08-06 17:43 ` [PATCH 174/236] Remove VINSN_INSN_RTX scaffolding David Malcolm
2014-08-06 17:43 ` [PATCH 039/236] create_insn_rtx_from_pattern and create_copy_of_insn_rtx return rtx_insn David Malcolm
2014-08-13 18:02   ` Jeff Law
2014-08-21  1:07     ` David Malcolm
2014-08-21 16:28       ` Mike Stump
2014-08-06 17:43 ` [PATCH 024/236] last_call_insn returns an rtx_call_insn * David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:34     ` David Malcolm
2014-08-06 17:43 ` [PATCH 072/236] explow.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:43 ` [PATCH 094/236] get_ebb_head_tail works with rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 153/236] config/tilepro: Use rtx_insn David Malcolm
2014-08-06 17:44 ` [PATCH 147/236] config/s390: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:44 ` [PATCH 139/236] config/mep: " David Malcolm
2014-08-06 17:44 ` [PATCH 188/236] Use rtx_insn in more places in haifa-sched.c David Malcolm
2014-08-06 17:44 ` [PATCH 095/236] modulo-sched.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:44 ` [PATCH 119/236] store-motion.c: Use rtx_insn David Malcolm
2014-08-06 17:44 ` [PATCH 101/236] recog.c: " David Malcolm
2014-08-06 17:44 ` [PATCH 184/236] Use rtx_insn in more places in sel-sched.c David Malcolm
2014-08-06 17:44 ` [PATCH 033/236] emit_move et al return rtx_insn * David Malcolm
2014-08-13 17:54   ` Jeff Law
2014-08-19 20:55     ` David Malcolm
2014-08-06 17:44 ` [PATCH 100/236] print-rtl.c: Use rtx_insn for various debug_ functions (also touches config/rs6000/rs6000.c) David Malcolm
2014-08-06 17:44 ` [PATCH 073/236] expmed.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:44 ` [PATCH 163/236] unshare_all_rtl_again takes an rtx_insn * David Malcolm
2014-08-06 17:44 ` [PATCH 106/236] regrename.c: Use rtx_insn David Malcolm
2014-08-06 17:44 ` [PATCH 089/236] loop-iv.c: Use rtx_insn (also touches cfgloop.h and loop-unroll.c) David Malcolm
2014-08-06 17:44 ` [PATCH 051/236] bb-reorder.c: Use rtx_insn David Malcolm
2014-08-13 18:16   ` Jeff Law
2014-08-06 17:44 ` [PATCH 052/236] bt-load.c: " David Malcolm
2014-08-06 17:44 ` [PATCH 011/236] Replace PREV_INSN et al macros with functions David Malcolm
2014-08-12 21:20   ` Jeff Law
2014-08-19 14:58     ` David Malcolm
2014-08-06 17:44 ` [PATCH 022/236] Make tablejump_p accept a rtx_jump_table_data ** David Malcolm
2014-08-13  4:50   ` Jeff Law
2014-08-19 19:21     ` David Malcolm
2014-08-06 17:44 ` [PATCH 228/236] tablejump_p takes an rtx_insn David Malcolm
2014-08-19 20:59   ` Richard Henderson
2014-08-06 17:44 ` [PATCH 031/236] emit_jump_table_data returns an rtx_jump_table_data * David Malcolm
2014-08-13 13:45   ` Jeff Law
2014-08-19 20:23     ` David Malcolm
2014-08-06 17:44 ` [PATCH 172/236] sel-sched-ir.h: Make ilist_t work on insn_t rather than rtx David Malcolm
2014-08-06 17:45 ` [PATCH 105/236] reginfo.c: Use rtx_insn (also touches rtl.h) David Malcolm
2014-08-06 17:45 ` [PATCH 097/236] postreload-gcse.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:45 ` [PATCH 183/236] Strengthen various insn emission functions David Malcolm
2014-08-06 17:45 ` [PATCH 093/236] mode-switching.c: Use rtx_insn David Malcolm
2014-08-06 17:45 ` [PATCH 053/236] builtins.c: strengthen various rtx to rtx_insn * and other subclasses David Malcolm
2014-08-06 17:45 ` [PATCH 075/236] final.c: Use rtx_insn (also touches output.c and config/arc/arc.c) David Malcolm
2014-08-13 19:47   ` Jeff Law
2014-08-06 17:45 ` [PATCH 043/236] peephole returns an rtx_insn David Malcolm
2014-08-13 18:06   ` Jeff Law
2014-08-21  9:40     ` David Malcolm
2014-08-06 17:45 ` [PATCH 158/236] Remove BB_FOOTER scaffolding David Malcolm
2014-08-06 17:45 ` [PATCH 046/236] delete_related_insns returns an rtx_insn David Malcolm
2014-08-13 18:10   ` Jeff Law
2014-08-21 15:01     ` David Malcolm
2014-08-06 17:45 ` [PATCH 091/236] lower-subreg.c: Use rtx_insn David Malcolm
2014-08-06 17:45 ` [PATCH 057/236] cfgcleanup.c: Use rtx_insn (also touches basic-block.h and ifcvt.c) David Malcolm
2014-08-13 18:23   ` Jeff Law
2014-08-06 18:02 ` [PATCH 160/236] function.c and shrink-wrap.*: more rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 176/236] cselib and incdec David Malcolm
2014-08-06 18:02 ` [PATCH 126/236] config/alpha/alpha.c: Use rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 014/236] VINSN_INSN_RTX scaffolding David Malcolm
2014-08-12 21:21   ` Jeff Law
2014-08-19 15:46     ` David Malcolm
2014-08-06 18:02 ` [PATCH 197/236] Tweak to ira-lives.c David Malcolm
2014-08-06 18:02 ` [PATCH 064/236] cprop.c: Use rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 198/236] PHASE 5: Additional rtx subclasses David Malcolm
2014-08-06 18:02 ` [PATCH 190/236] Remove insn_addresses_new from 'various scheduling strengthenings' David Malcolm
2014-08-13 19:40   ` David Malcolm
2014-08-13 20:25     ` Jeff Law
2014-08-06 18:02 ` [PATCH 060/236] cfgrtl.c: Use rtx subclasses David Malcolm
2014-08-13 18:28   ` Jeff Law
2014-08-06 18:02 ` [PATCH 152/236] config/tilegx: Use rtx_insn David Malcolm
2014-08-06 18:03 ` [PATCH 208/236] resource.c: Use rtx_sequence David Malcolm
2014-08-06 18:03 ` [PATCH 062/236] combine-stack-adj.c: Use rtx_insn David Malcolm
2014-08-06 18:04 ` [PATCH 135/236] config/i386/i386: " David Malcolm
2014-08-06 18:04 ` [PATCH 154/236] config/v850: " David Malcolm
2014-08-06 18:04 ` [PATCH 129/236] config/avr: " David Malcolm
2014-08-06 18:04 ` [PATCH 037/236] sel_bb_{head|end} return rtx_insn David Malcolm
2014-08-13 18:00   ` Jeff Law
2014-08-21  0:08     ` David Malcolm
2014-08-06 18:04 ` [PATCH 113/236] sched-rgn.c: Use rtx_insn in a couple of places David Malcolm
2014-08-06 18:04 ` [PATCH 059/236] cfgloopanal.c: Use rtx_insn David Malcolm
2014-08-06 18:04 ` [PATCH 210/236] varasm.c: Use rtx_sequence David Malcolm
2014-08-06 18:05 ` [PATCH 173/236] insn_t becomes an rtx_insn * David Malcolm
2014-08-06 18:05 ` [PATCH 118/236] stmt.c: Use rtx_insn David Malcolm
2014-08-06 18:05 ` [PATCH 050/236] auto-inc-dec.c: strengthen various rtx to rtx_insn * David Malcolm
2014-08-13 18:14   ` Jeff Law
2014-08-06 18:05 ` [PATCH 079/236] gcse.c: Use rtx_insn David Malcolm
2014-08-06 18:05 ` [PATCH 167/236] final accepts an rtx_insn David Malcolm
2014-08-06 18:05 ` [PATCH 038/236] find_first_parameter_load returns " David Malcolm
2014-08-13 18:01   ` Jeff Law
2014-08-21  1:00     ` David Malcolm
2014-08-06 18:06 ` [PATCH 083/236] init-regs.c: rtx_insn David Malcolm
2014-08-07 10:31 ` [PATCH 000/236] Introduce rtx subclasses Trevor Saunders
2014-08-12 20:39 ` Jeff Law
2014-08-13  0:29   ` David Malcolm
2014-08-13 13:59     ` Jeff Law
2014-08-18 19:18     ` David Malcolm
2014-08-14  0:16 ` David Malcolm
2014-08-14 16:32   ` David Malcolm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1407345815-14551-9-git-send-email-dmalcolm@redhat.com \
    --to=dmalcolm@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).