public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 02/13] df_set_note can take a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (3 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 13/13] make emit_partition_copy return " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 03/13] add_cfi_insn can be " tbsaunde+gcc
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* df-problems.c (df_set_note): Change type of argument to
	rtx_insn *.
---
 gcc/ChangeLog     | 5 +++++
 gcc/df-problems.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b278655..5428a05 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* df-problems.c (df_set_note): Change type of argument to
+	rtx_insn *.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* builtins.c (expand_builtin_trap): Change type of local
 	variable to rtx_insn *.
 	(add_sched_insns_for_speculation): Likewise.
diff --git a/gcc/df-problems.c b/gcc/df-problems.c
index d3d06ee..b9584a8 100644
--- a/gcc/df-problems.c
+++ b/gcc/df-problems.c
@@ -2864,7 +2864,7 @@ df_remove_dead_eq_notes (rtx_insn *insn, bitmap live)
 /* Set a NOTE_TYPE note for REG in INSN.  */
 
 static inline void
-df_set_note (enum reg_note note_type, rtx insn, rtx reg)
+df_set_note (enum reg_note note_type, rtx_insn *insn, rtx reg)
 {
   gcc_checking_assert (!DEBUG_INSN_P (insn));
   add_reg_note (insn, note_type, reg);
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 01/13] change local vars to rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (9 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 11/13] type reg_equiv_init as rtx_insn_list tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 08/13] make several functions in the scheduler take " tbsaunde+gcc
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* builtins.c (expand_builtin_trap): Change type of local
	variable to rtx_insn *.
	* config/arc/arc.md: Likewise.
	* config/arm/arm.c (arm_barrier_cost): Likewise.
	* config/avr/avr.c (avr_reorg): Likewise.
	* config/bfin/bfin.c (workaround_speculation): Likewise.
	(add_sched_insns_for_speculation): Likewise.
	* config/i386/i386.c (ix86_init_pic_reg): Likewise.
	(ix86_emit_save_regs): Likewise.
	(get_scratch_register_on_entry): Likewise.
	(ix86_emit_restore_reg_using_pop): Likewise.
	(ix86_emit_leave): Likewise.
	(ix86_emit_restore_regs_using_mov): Likewise.
	(ix86_expand_epilogue): Likewise.
	* config/rl78/rl78.c (rl78_alloc_physical_registers_cmp):
	Likewise.
	(rl78_alloc_physical_registers_umul): Likewise.
	* config/sh/sh.md: Likewise.
	* cselib.c (discard_useless_locs): Likewise.
	(cselib_invalidate_regno): Likewise.
	(cselib_invalidate_mem): Likewise.
	* function.c (expand_function_start): Likewise.
	(emit_use_return_register_into_block): Likewise.
	* gcse.c: Likewise.
	* haifa-sched.c (ok_for_early_queue_removal): Likewise.
	* ifcvt.c (noce_get_alt_condition): Likewise.
	* loop-doloop.c (doloop_condition_get): Likewise.
	* lra-constraints.c (inherit_in_ebb): Likewise.
	* modulo-sched.c (sms_schedule_by_order): Likewise.
	* recog.c (next_insn_tests_no_inequality): Likewise.
	* reorg.c (emit_delay_sequence): Likewise.
	(update_reg_dead_notes): Likewise.
	(fix_reg_dead_note): Likewise.
	(fill_slots_from_thread): Likewise.
	(delete_computation): Likewise.
---
 gcc/ChangeLog          | 31 +++++++++++++++++++++++++++++++
 gcc/builtins.c         |  2 +-
 gcc/config/arc/arc.md  |  4 ++--
 gcc/config/arm/arm.c   |  2 +-
 gcc/config/avr/avr.c   |  2 +-
 gcc/config/bfin/bfin.c |  4 ++--
 gcc/config/i386/i386.c | 20 +++++++++++---------
 gcc/config/rl78/rl78.c |  4 ++--
 gcc/config/sh/sh.md    |  2 +-
 gcc/cselib.c           |  6 +++---
 gcc/function.c         |  6 ++++--
 gcc/gcse.c             |  3 ++-
 gcc/haifa-sched.c      |  3 +--
 gcc/ifcvt.c            |  2 +-
 gcc/loop-doloop.c      |  2 +-
 gcc/lra-constraints.c  |  2 +-
 gcc/modulo-sched.c     |  2 +-
 gcc/recog.c            |  2 +-
 gcc/reorg.c            | 12 +++++++-----
 19 files changed, 74 insertions(+), 37 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fa0575f..b278655 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,34 @@
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
+	* builtins.c (expand_builtin_trap): Change type of local
+	variable to rtx_insn *.
+	(add_sched_insns_for_speculation): Likewise.
+	(ix86_emit_save_regs): Likewise.
+	(get_scratch_register_on_entry): Likewise.
+	(ix86_emit_restore_reg_using_pop): Likewise.
+	(ix86_emit_leave): Likewise.
+	(ix86_emit_restore_regs_using_mov): Likewise.
+	(ix86_expand_epilogue): Likewise.
+	Likewise.
+	(rl78_alloc_physical_registers_umul): Likewise.
+	* cselib.c (discard_useless_locs): Likewise.
+	(cselib_invalidate_regno): Likewise.
+	(cselib_invalidate_mem): Likewise.
+	* function.c (expand_function_start): Likewise.
+	(emit_use_return_register_into_block): Likewise.
+	* gcse.c: Likewise.
+	* haifa-sched.c (ok_for_early_queue_removal): Likewise.
+	* ifcvt.c (noce_get_alt_condition): Likewise.
+	* loop-doloop.c (doloop_condition_get): Likewise.
+	* lra-constraints.c (inherit_in_ebb): Likewise.
+	* modulo-sched.c (sms_schedule_by_order): Likewise.
+	* recog.c (next_insn_tests_no_inequality): Likewise.
+	* reorg.c (emit_delay_sequence): Likewise.
+	(update_reg_dead_notes): Likewise.
+	(fix_reg_dead_note): Likewise.
+	(fill_slots_from_thread): Likewise.
+	(delete_computation): Likewise.
+
 2015-05-01  Sandra Loosemore  <sandra@codesourcery.com>
 
 	* doc/extend.texi (Variable Attributes): Add menu and proper
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 523cddb..6fe1456 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -4754,7 +4754,7 @@ expand_builtin_trap (void)
 #ifdef HAVE_trap
   if (HAVE_trap)
     {
-      rtx insn = emit_insn (gen_trap ());
+      rtx_insn *insn = emit_insn (gen_trap ());
       /* For trap insns when not accumulating outgoing args force
 	 REG_ARGS_SIZE note to prevent crossjumping of calls with
 	 different args sizes.  */
diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
index d66441f..ce60182 100644
--- a/gcc/config/arc/arc.md
+++ b/gcc/config/arc/arc.md
@@ -4877,7 +4877,7 @@
     {
       /* At least four instructions are needed between the setting of LP_COUNT
 	 and the loop end - but the lp instruction qualifies as one.  */
-      rtx prev = prev_nonnote_insn (insn);
+      rtx_insn *prev = prev_nonnote_insn (insn);
 
       if (!INSN_P (prev) || dead_or_set_regno_p (prev, LP_COUNT))
 	output_asm_insn ("nop", operands);
@@ -4933,7 +4933,7 @@
   ""
   "*
 {
-  rtx prev = prev_nonnote_insn (insn);
+  rtx_insn *prev = prev_nonnote_insn (insn);
 
   /* If there is an immediately preceding label, we must output a nop,
      lest a branch to that label will fall out of the loop.
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 10dca3d..666ef42 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -16609,7 +16609,7 @@ arm_barrier_cost (rtx insn)
      but at the moment, the basic block information seems to be
      corrupt by this stage of the compilation.  */
   int base_cost = 50;
-  rtx next = next_nonnote_insn (insn);
+  rtx_insn *next = next_nonnote_insn (insn);
 
   if (next != NULL && LABEL_P (next))
     base_cost -= 20;
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index 68d5ddc..205fcdb 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -11094,7 +11094,7 @@ avr_reorg (void)
 	{
           /* Now we work under compare insn with difficult branch.  */
 
-          rtx next = next_real_insn (insn);
+	  rtx_insn *next = next_real_insn (insn);
           rtx pat = PATTERN (next);
 
           pattern = SET_SRC (pattern);
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index 1868c53..e8e8a4f 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -4521,7 +4521,7 @@ workaround_speculation (void)
 
 		  if (delay_needed > cycles_since_jump)
 		    {
-		      rtx prev = prev_real_insn (label);
+		      rtx_insn *prev = prev_real_insn (label);
 		      delay_needed -= cycles_since_jump;
 		      if (dump_file)
 			fprintf (dump_file, "Adding %d nops after %d\n",
@@ -4587,7 +4587,7 @@ add_sched_insns_for_speculation (void)
 	  if (any_condjump_p (insn)
 	      && !cbranch_predicted_taken_p (insn))
 	    {
-	      rtx n = next_real_insn (insn);
+	      rtx_insn *n = next_real_insn (insn);
 	      emit_insn_before (gen_stall (GEN_INT (3)), n);
 	    }
 	}
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 0e8477d..d569244 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -6407,7 +6407,7 @@ ix86_init_pic_reg (void)
       rtx reg = crtl->profile
 		? gen_rtx_REG (Pmode, REAL_PIC_OFFSET_TABLE_REGNUM)
 		: pic_offset_table_rtx;
-      rtx insn = emit_insn (gen_set_got (reg));
+      rtx_insn *insn = emit_insn (gen_set_got (reg));
       RTX_FRAME_RELATED_P (insn) = 1;
       if (crtl->profile)
         emit_move_insn (pic_offset_table_rtx, reg);
@@ -10373,7 +10373,7 @@ static void
 ix86_emit_save_regs (void)
 {
   unsigned int regno;
-  rtx insn;
+  rtx_insn *insn;
 
   for (regno = FIRST_PSEUDO_REGISTER - 1; regno-- > 0; )
     if (!SSE_REGNO_P (regno) && ix86_save_reg (regno, true))
@@ -10837,7 +10837,7 @@ get_scratch_register_on_entry (struct scratch_reg *sr)
   sr->reg = gen_rtx_REG (Pmode, regno);
   if (sr->saved)
     {
-      rtx insn = emit_insn (gen_push (sr->reg));
+      rtx_insn *insn = emit_insn (gen_push (sr->reg));
       RTX_FRAME_RELATED_P (insn) = 1;
     }
 }
@@ -11804,7 +11804,7 @@ static void
 ix86_emit_restore_reg_using_pop (rtx reg)
 {
   struct machine_function *m = cfun->machine;
-  rtx insn = emit_insn (gen_pop (reg));
+  rtx_insn *insn = emit_insn (gen_pop (reg));
 
   ix86_add_cfa_restore_note (insn, reg, m->fs.sp_offset);
   m->fs.sp_offset -= UNITS_PER_WORD;
@@ -11874,7 +11874,7 @@ static void
 ix86_emit_leave (void)
 {
   struct machine_function *m = cfun->machine;
-  rtx insn = emit_insn (ix86_gen_leave ());
+  rtx_insn *insn = emit_insn (ix86_gen_leave ());
 
   ix86_add_queued_cfa_restore_notes (insn);
 
@@ -11910,7 +11910,8 @@ ix86_emit_restore_regs_using_mov (HOST_WIDE_INT cfa_offset,
     if (!SSE_REGNO_P (regno) && ix86_save_reg (regno, maybe_eh_return))
       {
 	rtx reg = gen_rtx_REG (word_mode, regno);
-	rtx insn, mem;
+	rtx mem;
+	rtx_insn *insn;
 
 	mem = choose_baseaddr (cfa_offset);
 	mem = gen_frame_mem (word_mode, mem);
@@ -12082,7 +12083,8 @@ ix86_expand_epilogue (int style)
       /* eh_return epilogues need %ecx added to the stack pointer.  */
       if (style == 2)
 	{
-	  rtx insn, sa = EH_RETURN_STACKADJ_RTX;
+	  rtx sa = EH_RETURN_STACKADJ_RTX;
+	  rtx_insn *insn;
 
 	  /* Stack align doesn't work with eh_return.  */
 	  gcc_assert (!stack_realign_drap);
@@ -12210,7 +12212,7 @@ ix86_expand_epilogue (int style)
   if (using_drap)
     {
       int param_ptr_offset = UNITS_PER_WORD;
-      rtx insn;
+      rtx_insn *insn;
 
       gcc_assert (stack_realign_drap);
 
@@ -12272,7 +12274,7 @@ ix86_expand_epilogue (int style)
       if (crtl->args.pops_args >= 65536)
 	{
 	  rtx ecx = gen_rtx_REG (SImode, CX_REG);
-	  rtx insn;
+	  rtx_insn *insn;
 
 	  /* There is no "pascal" calling convention in any 64bit ABI.  */
 	  gcc_assert (!TARGET_64BIT);
diff --git a/gcc/config/rl78/rl78.c b/gcc/config/rl78/rl78.c
index 6489807..0ca5515 100644
--- a/gcc/config/rl78/rl78.c
+++ b/gcc/config/rl78/rl78.c
@@ -3262,7 +3262,7 @@ rl78_alloc_physical_registers_cmp (rtx_insn * insn)
 {
   int tmp_id;
   rtx saved_op1;
-  rtx prev = prev_nonnote_nondebug_insn (insn);
+  rtx_insn *prev = prev_nonnote_nondebug_insn (insn);
   rtx first;
 
   OP (1) = transcode_memory_rtx (OP (1), DE, insn);
@@ -3353,7 +3353,7 @@ rl78_alloc_physical_registers_cmp (rtx_insn * insn)
 static void
 rl78_alloc_physical_registers_umul (rtx_insn * insn)
 {
-  rtx prev = prev_nonnote_nondebug_insn (insn);
+  rtx_insn *prev = prev_nonnote_nondebug_insn (insn);
   rtx first;
   int tmp_id;
   rtx saved_op1;
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 24ddc9e..5c0e707 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -5964,7 +5964,7 @@ label:
    When we're here, the not:SI pattern obviously has been matched already
    and we only have to see whether the following insn is the left shift.  */
 
-  rtx i = next_nonnote_insn_bb (curr_insn);
+  rtx_insn *i = next_nonnote_insn_bb (curr_insn);
   if (i == NULL_RTX || !NONJUMP_INSN_P (i))
     FAIL;
 
diff --git a/gcc/cselib.c b/gcc/cselib.c
index 30845ed..5256a6e 100644
--- a/gcc/cselib.c
+++ b/gcc/cselib.c
@@ -642,7 +642,7 @@ discard_useless_locs (cselib_val **x, void *info ATTRIBUTE_UNUSED)
   cselib_val *v = *x;
   struct elt_loc_list **p = &v->locs;
   bool had_locs = v->locs != NULL;
-  rtx setting_insn = v->locs ? v->locs->setting_insn : NULL;
+  rtx_insn *setting_insn = v->locs ? v->locs->setting_insn : NULL;
 
   while (*p)
     {
@@ -2190,7 +2190,7 @@ cselib_invalidate_regno (unsigned int regno, machine_mode mode)
 	{
 	  cselib_val *v = (*l)->elt;
 	  bool had_locs;
-	  rtx setting_insn;
+	  rtx_insn *setting_insn;
 	  struct elt_loc_list **p;
 	  unsigned int this_last = i;
 
@@ -2268,7 +2268,7 @@ cselib_invalidate_mem (rtx mem_rtx)
       bool has_mem = false;
       struct elt_loc_list **p = &v->locs;
       bool had_locs = v->locs != NULL;
-      rtx setting_insn = v->locs ? v->locs->setting_insn : NULL;
+      rtx_insn *setting_insn = v->locs ? v->locs->setting_insn : NULL;
 
       while (*p)
 	{
diff --git a/gcc/function.c b/gcc/function.c
index af4c087..83e87a2 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -5094,7 +5094,8 @@ expand_function_start (tree subr)
   if (cfun->static_chain_decl)
     {
       tree parm = cfun->static_chain_decl;
-      rtx local, chain, insn;
+      rtx local, chain;
+     rtx_insn *insn;
 
       local = gen_reg_rtx (Pmode);
       chain = targetm.calls.static_chain (current_function_decl, true);
@@ -5657,7 +5658,8 @@ prologue_epilogue_contains (const_rtx insn)
 static void
 emit_use_return_register_into_block (basic_block bb)
 {
-  rtx seq, insn;
+  rtx seq;
+ rtx_insn *insn;
   start_sequence ();
   use_return_register ();
   seq = get_insns ();
diff --git a/gcc/gcse.c b/gcc/gcse.c
index e4303fe..cf02bab 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -573,7 +573,8 @@ compute_can_copy (void)
 {
   int i;
 #ifndef AVOID_CCMODE_COPIES
-  rtx reg, insn;
+  rtx reg;
+ rtx_insn *insn;
 #endif
   memset (can_copy, 0, NUM_MACHINE_MODES);
 
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index d202fd8..9a662d0 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -5241,7 +5241,6 @@ ok_for_early_queue_removal (rtx insn)
 {
   if (targetm.sched.is_costly_dependence)
     {
-      rtx prev_insn;
       int n_cycles;
       int i = scheduled_insns.length ();
       for (n_cycles = flag_sched_stalled_insns_dep; n_cycles; n_cycles--)
@@ -5250,7 +5249,7 @@ ok_for_early_queue_removal (rtx insn)
 	    {
 	      int cost;
 
-	      prev_insn = scheduled_insns[i];
+	      rtx_insn *prev_insn = scheduled_insns[i];
 
 	      if (!NOTE_P (prev_insn))
 		{
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index a3e3e5c..8d8d4a8 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -1864,7 +1864,7 @@ noce_get_alt_condition (struct noce_if_info *if_info, rtx target,
       enum rtx_code code = GET_CODE (if_info->cond);
       rtx op_a = XEXP (if_info->cond, 0);
       rtx op_b = XEXP (if_info->cond, 1);
-      rtx prev_insn;
+      rtx_insn *prev_insn;
 
       /* First, look to see if we put a constant in a register.  */
       prev_insn = prev_nonnote_insn (if_info->cond_earliest);
diff --git a/gcc/loop-doloop.c b/gcc/loop-doloop.c
index 0b6447ad..4607867 100644
--- a/gcc/loop-doloop.c
+++ b/gcc/loop-doloop.c
@@ -141,7 +141,7 @@ doloop_condition_get (rtx doloop_pat)
   if (GET_CODE (pattern) != PARALLEL)
     {
       rtx cond;
-      rtx prev_insn = prev_nondebug_insn (doloop_pat);
+      rtx_insn *prev_insn = prev_nondebug_insn (doloop_pat);
       rtx cmp_arg1, cmp_arg2;
       rtx cmp_orig;
 
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index a65a12f..791f7de 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -5567,7 +5567,7 @@ inherit_in_ebb (rtx_insn *head, rtx_insn *tail)
 			   || reg_renumber[src_regno] >= 0)
 		    {
 		      bool before_p;
-		      rtx use_insn = curr_insn;
+		      rtx_insn *use_insn = curr_insn;
 
 		      before_p = (JUMP_P (curr_insn)
 				  || (CALL_P (curr_insn) && reg->type == OP_IN));
diff --git a/gcc/modulo-sched.c b/gcc/modulo-sched.c
index 22cd216..8b0b0d4 100644
--- a/gcc/modulo-sched.c
+++ b/gcc/modulo-sched.c
@@ -2203,7 +2203,7 @@ sms_schedule_by_order (ddg_ptr g, int mii, int maxii, int *nodes_order)
 	{
 	  int u = nodes_order[i];
   	  ddg_node_ptr u_node = &ps->g->nodes[u];
-	  rtx insn = u_node->insn;
+	  rtx_insn *insn = u_node->insn;
 
 	  if (!NONDEBUG_INSN_P (insn))
 	    {
diff --git a/gcc/recog.c b/gcc/recog.c
index c3ad86f..a5be34c 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -978,7 +978,7 @@ validate_simplify_insn (rtx insn)
 int
 next_insn_tests_no_inequality (rtx insn)
 {
-  rtx next = next_cc0_user (insn);
+  rtx_insn *next = next_cc0_user (insn);
 
   /* If there is no next insn, we have to take the conservative choice.  */
   if (next == 0)
diff --git a/gcc/reorg.c b/gcc/reorg.c
index e9af7b7..a0674e4 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -535,7 +535,7 @@ emit_delay_sequence (rtx_insn *insn, rtx_insn_list *list, int length)
 
   /* Unlink INSN from the insn chain, so that we can put it into
      the SEQUENCE.   Remember where we want to emit SEQUENCE in AFTER.  */
-  rtx after = PREV_INSN (insn);
+  rtx_insn *after = PREV_INSN (insn);
   remove_insn (insn);
   SET_NEXT_INSN (insn) = SET_PREV_INSN (insn) = NULL;
 
@@ -1809,7 +1809,8 @@ reorg_redirect_jump (rtx_insn *jump, rtx nlabel)
 static void
 update_reg_dead_notes (rtx insn, rtx delayed_insn)
 {
-  rtx p, link, next;
+  rtx link, next;
+  rtx_insn *p;
 
   for (p = next_nonnote_insn (insn); p != delayed_insn;
        p = next_nonnote_insn (p))
@@ -1842,7 +1843,8 @@ update_reg_dead_notes (rtx insn, rtx delayed_insn)
 static void
 fix_reg_dead_note (rtx start_insn, rtx stop_insn)
 {
-  rtx p, link, next;
+  rtx link, next;
+  rtx_insn *p;
 
   for (p = next_nonnote_insn (start_insn); p != stop_insn;
        p = next_nonnote_insn (p))
@@ -2693,7 +2695,7 @@ fill_slots_from_thread (rtx_insn *insn, rtx condition, rtx thread_or_return,
 	  && REG_P (SET_DEST (pat))
 	  && !reg_overlap_mentioned_p (SET_DEST (pat), SET_SRC (pat)))
 	{
-	  rtx next = next_nonnote_insn (trial);
+	  rtx_insn *next = next_nonnote_insn (trial);
 
 	  if (next && NONJUMP_INSN_P (next)
 	      && GET_CODE (PATTERN (next)) != USE
@@ -3121,7 +3123,7 @@ delete_computation (rtx insn)
 
   if (HAVE_cc0 && reg_referenced_p (cc0_rtx, PATTERN (insn)))
     {
-      rtx prev = prev_nonnote_insn (insn);
+      rtx_insn *prev = prev_nonnote_insn (insn);
       /* We assume that at this stage
 	 CC's are always set explicitly
 	 and always immediately before the jump that
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 07/13] make some functions in config/ take a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (6 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 04/13] recog_data::insn " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 06/13] make some functions in lra-constraints.c take " tbsaunde+gcc
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	to rtx_insn *.
	* config/i386/i386.c: Change the type of some arguments to
	rtx_insn *.
	* config/arm/arm.c: Likewise.
---
 gcc/ChangeLog          |  7 +++++++
 gcc/config/arm/arm.c   |  2 +-
 gcc/config/i386/i386.c | 16 ++++++++--------
 3 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 17ad3df..a1c86e0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	to rtx_insn *.
+	* config/i386/i386.c: Change the type of some arguments to
+	rtx_insn *.
+	* config/arm/arm.c: Likewise.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* lra-constraints.c: Change type of some arguments to rtx_insn *.
 
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 666ef42..8a0ee38 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -16603,7 +16603,7 @@ dump_minipool (rtx_insn *scan)
 
 /* Return the cost of forcibly inserting a barrier after INSN.  */
 static int
-arm_barrier_cost (rtx insn)
+arm_barrier_cost (rtx_insn *insn)
 {
   /* Basing the location of the pool on the loop depth is preferable,
      but at the moment, the basic block information seems to be
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index d569244..cd7bb56 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -10488,7 +10488,7 @@ static GTY(()) rtx queued_cfa_restores;
    in the register and on the stack.  */
 
 static void
-ix86_add_cfa_restore_note (rtx insn, rtx reg, HOST_WIDE_INT cfa_offset)
+ix86_add_cfa_restore_note (rtx_insn *insn, rtx reg, HOST_WIDE_INT cfa_offset)
 {
   if (!crtl->shrink_wrapped
       && cfa_offset <= cfun->machine->fs.red_zone_offset)
@@ -11931,7 +11931,7 @@ ix86_emit_restore_regs_using_mov (HOST_WIDE_INT cfa_offset,
 	    m->fs.drap_valid = true;
 	  }
 	else
-	  ix86_add_cfa_restore_note (NULL_RTX, reg, cfa_offset);
+	  ix86_add_cfa_restore_note (NULL, reg, cfa_offset);
 
 	cfa_offset -= UNITS_PER_WORD;
       }
@@ -11956,7 +11956,7 @@ ix86_emit_restore_sse_regs_using_mov (HOST_WIDE_INT cfa_offset,
 	set_mem_align (mem, 128);
 	emit_move_insn (reg, mem);
 
-	ix86_add_cfa_restore_note (NULL_RTX, reg, cfa_offset);
+	ix86_add_cfa_restore_note (NULL, reg, cfa_offset);
 
 	cfa_offset -= 16;
       }
@@ -18274,7 +18274,7 @@ increase_distance (rtx_insn *prev, rtx_insn *next, unsigned int distance)
 
 static bool
 insn_defines_reg (unsigned int regno1, unsigned int regno2,
-		  rtx insn)
+		  rtx_insn *insn)
 {
   df_ref def;
 
@@ -50505,7 +50505,7 @@ dispatch_violation (void)
 /* Return true if insn is a branch instruction.  */
 
 static bool
-is_branch (rtx insn)
+is_branch (rtx_insn *insn)
 {
   return (CALL_P (insn) || JUMP_P (insn));
 }
@@ -50513,7 +50513,7 @@ is_branch (rtx insn)
 /* Return true if insn is a prefetch instruction.  */
 
 static bool
-is_prefetch (rtx insn)
+is_prefetch (rtx_insn *insn)
 {
   return NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) == PREFETCH;
 }
@@ -50679,7 +50679,7 @@ find_constant (rtx in_rtx, imm_info *imm_values)
    bit immediates.  */
 
 static int
-get_num_immediates (rtx insn, int *imm, int *imm32, int *imm64)
+get_num_immediates (rtx_insn *insn, int *imm, int *imm32, int *imm64)
 {
   imm_info imm_values = {0, 0, 0};
 
@@ -50694,7 +50694,7 @@ get_num_immediates (rtx insn, int *imm, int *imm32, int *imm64)
    immediate.  */
 
 static bool
-has_immediate (rtx insn)
+has_immediate (rtx_insn *insn)
 {
   int num_imm_operand;
   int num_imm32_operand;
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 10/13] make fp_setter_insn take a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 09/13] make validate_replace_src_group take a rtx_insn * tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 05/13] kill_autoinc_value can " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 13/13] make emit_partition_copy return " tbsaunde+gcc
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* cselib.c (fp_setter_insn): Take a rtx_insn *.
	* cselib.h (fp_setter_insn): Adjust.
---
 gcc/ChangeLog | 5 +++++
 gcc/cselib.c  | 2 +-
 gcc/cselib.h  | 2 +-
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6f9e6c1..d3e23bd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* cselib.c (fp_setter_insn): Take a rtx_insn *.
+	* cselib.h (fp_setter_insn): Adjust.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* recog.c (struct validate_replace_src_data): Change type of
 	insn field to rtx_insn *.
 	(validate_replace_src_group): Change type of argument to rtx_insn *.
diff --git a/gcc/cselib.c b/gcc/cselib.c
index 5256a6e..f4b2580 100644
--- a/gcc/cselib.c
+++ b/gcc/cselib.c
@@ -2618,7 +2618,7 @@ cselib_record_sets (rtx_insn *insn)
 /* Return true if INSN in the prologue initializes hard_frame_pointer_rtx.  */
 
 bool
-fp_setter_insn (rtx insn)
+fp_setter_insn (rtx_insn *insn)
 {
   rtx expr, pat = NULL_RTX;
 
diff --git a/gcc/cselib.h b/gcc/cselib.h
index c20f85f..082bf54 100644
--- a/gcc/cselib.h
+++ b/gcc/cselib.h
@@ -79,7 +79,7 @@ extern void cselib_init (int);
 extern void cselib_clear_table (void);
 extern void cselib_finish (void);
 extern void cselib_process_insn (rtx_insn *);
-extern bool fp_setter_insn (rtx);
+extern bool fp_setter_insn (rtx_insn *);
 extern machine_mode cselib_reg_set_mode (const_rtx);
 extern int rtx_equal_for_cselib_p (rtx, rtx);
 extern int references_value_p (const_rtx, int);
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 00/13] further rtx_insn *ification
@ 2015-05-02 21:02 tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 09/13] make validate_replace_src_group take a rtx_insn * tbsaunde+gcc
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

Hi,

This set of patches changes rtx to rtx_insn * in many plaes where its fairly
trivial to do so.

each was bootstrapped + regtested on x86_64-linux-gnu, and the series was run
through config-list.mk.  I believe this all falls under Jeff's preapproval from
last year for this sort of thing which I assume is still valid, so committing
to trunk.

Trev


Trevor Saunders (13):
  change local vars to rtx_insn *
  df_set_note can take a rtx_insn *
  add_cfi_insn can be a rtx_insn *
  recog_data::insn can be a rtx_insn *
  kill_autoinc_value can take a rtx_insn *
  make some functions in lra-constraints.c take rtx_insn *
  make some functions in config/ take a rtx_insn *
  make several functions in the scheduler take rtx_insn *
  make validate_replace_src_group take a rtx_insn *
  make fp_setter_insn take a rtx_insn *
  type reg_equiv_init as rtx_insn_list
  make set_return_jump_label take an rtx_insn *
  make emit_partition_copy return a rtx_insn *

 gcc/ChangeLog          | 104 +++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/builtins.c         |   2 +-
 gcc/config/arc/arc.md  |   4 +-
 gcc/config/arm/arm.c   |   4 +-
 gcc/config/avr/avr.c   |   2 +-
 gcc/config/bfin/bfin.c |   4 +-
 gcc/config/i386/i386.c |  36 +++++++++--------
 gcc/config/rl78/rl78.c |   4 +-
 gcc/config/sh/sh.md    |   2 +-
 gcc/cselib.c           |   8 ++--
 gcc/cselib.h           |   2 +-
 gcc/df-problems.c      |   2 +-
 gcc/dwarf2cfi.c        |   2 +-
 gcc/function.c         |   8 ++--
 gcc/function.h         |   2 +-
 gcc/gcse.c             |   3 +-
 gcc/genrecog.c         |   2 +-
 gcc/haifa-sched.c      |  33 ++++++++--------
 gcc/ifcvt.c            |   2 +-
 gcc/ira.c              |  12 +++---
 gcc/loop-doloop.c      |   2 +-
 gcc/lra-constraints.c  |   6 +--
 gcc/modulo-sched.c     |   2 +-
 gcc/recog.c            |   8 ++--
 gcc/recog.h            |   4 +-
 gcc/regcprop.c         |   2 +-
 gcc/reload.h           |   2 +-
 gcc/reload1.c          |   8 ++--
 gcc/reorg.c            |  12 +++---
 gcc/sched-deps.c       |  16 ++++----
 gcc/sched-int.h        |   2 +-
 gcc/sched-rgn.c        |  10 ++---
 gcc/sel-sched.c        |   6 +--
 gcc/tree-outof-ssa.c   |  31 +++++++--------
 34 files changed, 228 insertions(+), 121 deletions(-)

-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 12/13] make set_return_jump_label take an rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (11 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 08/13] make several functions in the scheduler take " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-04 17:16 ` [PATCH 00/13] further rtx_insn *ification Jeff Law
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* function.c (set_return_jump_label): Change type of argument to
	rtx_insn *.
	* function.h (set_return_jump_label): Adjust.
---
 gcc/ChangeLog  | 6 ++++++
 gcc/function.c | 2 +-
 gcc/function.h | 2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 59fa7f7..ea48607 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* function.c (set_return_jump_label): Change type of argument to
+	rtx_insn *.
+	* function.h (set_return_jump_label): Adjust.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* reload.h (struct reg_equivs_t): Change type of init to
 	rtx_insn *.
 	* ira.c (fix_reg_equiv_init): Adjust.
diff --git a/gcc/function.c b/gcc/function.c
index 83e87a2..4f4c461 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -5703,7 +5703,7 @@ emit_return_into_block (bool simple_p, basic_block bb)
 /* Set JUMP_LABEL for a return insn.  */
 
 void
-set_return_jump_label (rtx returnjump)
+set_return_jump_label (rtx_insn *returnjump)
 {
   rtx pat = PATTERN (returnjump);
   if (GET_CODE (pat) == PARALLEL)
diff --git a/gcc/function.h b/gcc/function.h
index fc12f26..81d76bf 100644
--- a/gcc/function.h
+++ b/gcc/function.h
@@ -917,7 +917,7 @@ extern rtx get_arg_pointer_save_area (void);
 extern void maybe_copy_prologue_epilogue_insn (rtx, rtx);
 extern int prologue_epilogue_contains (const_rtx);
 extern void emit_return_into_block (bool simple_p, basic_block bb);
-extern void set_return_jump_label (rtx);
+extern void set_return_jump_label (rtx_insn *);
 extern bool active_insn_between (rtx_insn *head, rtx_insn *tail);
 extern vec<edge> convert_jumps_to_returns (basic_block last_bb, bool simple_p,
 					   vec<edge> unconverted);
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 06/13] make some functions in lra-constraints.c take rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (7 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 07/13] make some functions in config/ take " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 11/13] type reg_equiv_init as rtx_insn_list tbsaunde+gcc
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* lra-constraints.c: Change type of some arguments to rtx_insn *.
---
 gcc/ChangeLog         | 4 ++++
 gcc/lra-constraints.c | 4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6807ec5..17ad3df 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* lra-constraints.c: Change type of some arguments to rtx_insn *.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* regcprop.c (kill_autoinc_value): Change type of argument to
 	rtx_insn *.
 
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index 791f7de..5c4c2f2 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -4141,7 +4141,7 @@ contains_deleted_insn_p (rtx_insn_list *list)
 
 /* Return true if X contains a pseudo dying in INSN.  */
 static bool
-dead_pseudo_p (rtx x, rtx insn)
+dead_pseudo_p (rtx x, rtx_insn *insn)
 {
   int i, j;
   const char *fmt;
@@ -4544,7 +4544,7 @@ setup_next_usage_insn (int regno, rtx insn, int reloads_num, bool after_p)
    optional debug insns finished by a non-debug insn using REGNO.
    RELOADS_NUM is current number of reload insns processed so far.  */
 static void
-add_next_usage_insn (int regno, rtx insn, int reloads_num)
+add_next_usage_insn (int regno, rtx_insn *insn, int reloads_num)
 {
   rtx next_usage_insns;
 
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 04/13] recog_data::insn can be a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (5 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 03/13] add_cfi_insn can be " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 07/13] make some functions in config/ take " tbsaunde+gcc
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* genrecog.c (print_subroutine): Adjust.
	* recog.c (get_bool_attr_mask_uncached): Likewise.
	* recog.h (struct recog_data_d): Change the type of insn to
	rtx_insn *.
---
 gcc/ChangeLog  | 7 +++++++
 gcc/genrecog.c | 2 +-
 gcc/recog.c    | 2 +-
 gcc/recog.h    | 2 +-
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 05c66a6..e702301 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* genrecog.c (print_subroutine): Adjust.
+	* recog.c (get_bool_attr_mask_uncached): Likewise.
+	* recog.h (struct recog_data_d): Change the type of insn to
+	rtx_insn *.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* dwarf2cfi.c (add_cfi_insn): Change type to rtx_insn *.
 
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
diff --git a/gcc/genrecog.c b/gcc/genrecog.c
index 29da094..73e7995 100644
--- a/gcc/genrecog.c
+++ b/gcc/genrecog.c
@@ -5118,7 +5118,7 @@ print_subroutine (output_state *os, state *s, int proc_id)
   print_subroutine_start (os, s, &root_pos);
   if (proc_id == 0)
     {
-      printf ("  recog_data.insn = NULL_RTX;\n");
+      printf ("  recog_data.insn = NULL;\n");
       printf ("  rtx_insn *insn ATTRIBUTE_UNUSED;\n");
       printf ("  insn = safe_as_a <rtx_insn *> (uncast_insn);\n");
     }
diff --git a/gcc/recog.c b/gcc/recog.c
index a5be34c..53d89e0 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -2124,7 +2124,7 @@ get_bool_attr_mask_uncached (rtx_insn *insn, bool_attr attr)
      that the insn operands are already cached.  As above, the attribute
      mustn't depend on the values of operands, so we don't provide their
      real values here.  */
-  rtx old_insn = recog_data.insn;
+  rtx_insn *old_insn = recog_data.insn;
   int old_alternative = which_alternative;
 
   recog_data.insn = insn;
diff --git a/gcc/recog.h b/gcc/recog.h
index 8a38b26..51f2165 100644
--- a/gcc/recog.h
+++ b/gcc/recog.h
@@ -249,7 +249,7 @@ struct recog_data_d
   bool is_asm;
 
   /* In case we are caching, hold insn data was generated for.  */
-  rtx insn;
+  rtx_insn *insn;
 };
 
 extern struct recog_data_d recog_data;
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 03/13] add_cfi_insn can be a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (4 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 02/13] df_set_note can take " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 04/13] recog_data::insn " tbsaunde+gcc
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* dwarf2cfi.c (add_cfi_insn): Change type to rtx_insn *.
---
 gcc/ChangeLog   | 4 ++++
 gcc/dwarf2cfi.c | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5428a05..05c66a6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* dwarf2cfi.c (add_cfi_insn): Change type to rtx_insn *.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* df-problems.c (df_set_note): Change type of argument to
 	rtx_insn *.
 
diff --git a/gcc/dwarf2cfi.c b/gcc/dwarf2cfi.c
index 2469c25..7bcbd6c 100644
--- a/gcc/dwarf2cfi.c
+++ b/gcc/dwarf2cfi.c
@@ -218,7 +218,7 @@ static GTY(()) reg_saved_in_data *cie_return_save;
 static GTY(()) unsigned long dwarf2out_cfi_label_num;
 
 /* The insn after which a new CFI note should be emitted.  */
-static rtx add_cfi_insn;
+static rtx_insn *add_cfi_insn;
 
 /* When non-null, add_cfi will add the CFI to this vector.  */
 static cfi_vec *add_cfi_vec;
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 11/13] type reg_equiv_init as rtx_insn_list
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (8 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 06/13] make some functions in lra-constraints.c take " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 01/13] change local vars to rtx_insn * tbsaunde+gcc
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tsaunders@mozilla.com>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* reload.h (struct reg_equivs_t): Change type of init to
	rtx_insn *.
	* ira.c (fix_reg_equiv_init): Adjust.
	* reload1.c (eliminate_regs_1): Likewise.
	(init_eliminable_invariants): Likewise.
---
 gcc/ChangeLog |  8 ++++++++
 gcc/ira.c     | 12 +++++++-----
 gcc/reload.h  |  2 +-
 gcc/reload1.c |  8 ++++----
 4 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d3e23bd..59fa7f7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* reload.h (struct reg_equivs_t): Change type of init to
+	rtx_insn *.
+	* ira.c (fix_reg_equiv_init): Adjust.
+	* reload1.c (eliminate_regs_1): Likewise.
+	(init_eliminable_invariants): Likewise.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* cselib.c (fp_setter_insn): Take a rtx_insn *.
 	* cselib.h (fp_setter_insn): Adjust.
 
diff --git a/gcc/ira.c b/gcc/ira.c
index 25baa90..ab8e9ce 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -2709,20 +2709,22 @@ fix_reg_equiv_init (void)
 {
   int max_regno = max_reg_num ();
   int i, new_regno, max;
-  rtx x, prev, next, insn, set;
+  rtx set;
+  rtx_insn_list *x, *next, *prev;
+  rtx_insn *insn;
 
   if (max_regno_before_ira < max_regno)
     {
       max = vec_safe_length (reg_equivs);
       grow_reg_equivs ();
       for (i = FIRST_PSEUDO_REGISTER; i < max; i++)
-	for (prev = NULL_RTX, x = reg_equiv_init (i);
+	for (prev = NULL, x = reg_equiv_init (i);
 	     x != NULL_RTX;
 	     x = next)
 	  {
-	    next = XEXP (x, 1);
-	    insn = XEXP (x, 0);
-	    set = single_set (as_a <rtx_insn *> (insn));
+	    next = x->next ();
+	    insn = x->insn ();
+	    set = single_set (insn);
 	    ira_assert (set != NULL_RTX
 			&& (REG_P (SET_DEST (set)) || REG_P (SET_SRC (set))));
 	    if (REG_P (SET_DEST (set))
diff --git a/gcc/reload.h b/gcc/reload.h
index c777e54..a58b902 100644
--- a/gcc/reload.h
+++ b/gcc/reload.h
@@ -239,7 +239,7 @@ struct reg_equivs_t
 
   /* The list of insns that initialized reg N from its equivalent
      constant or memory slot.  */
-  rtx init;
+  rtx_insn_list *init;
 };
 
 #define reg_equiv_constant(ELT) \
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 82b106e..4c47906 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -2619,7 +2619,7 @@ eliminate_regs_1 (rtx x, machine_mode mem_mode, rtx insn,
 			             mem_mode, insn, true, for_costs);
 	  /* There exists at least one use of REGNO that cannot be
 	     eliminated.  Prevent the defining insn from being deleted.  */
-	  reg_equiv_init (regno) = NULL_RTX;
+	  reg_equiv_init (regno) = NULL;
 	  if (!for_costs)
 	    alter_reg (regno, -1, true);
 	}
@@ -4252,17 +4252,17 @@ init_eliminable_invariants (rtx_insn *first, bool do_subregs)
 		    {
 		      reg_equiv_memory_loc (i) = force_const_mem (mode, x);
 		      if (! reg_equiv_memory_loc (i))
-			reg_equiv_init (i) = NULL_RTX;
+			reg_equiv_init (i) = NULL;
 		    }
 		}
 	      else
 		{
-		  reg_equiv_init (i) = NULL_RTX;
+		  reg_equiv_init (i) = NULL;
 		  continue;
 		}
 	    }
 	  else
-	    reg_equiv_init (i) = NULL_RTX;
+	    reg_equiv_init (i) = NULL;
 	}
     }
 
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 13/13] make emit_partition_copy return a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (2 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 10/13] make fp_setter_insn " tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 02/13] df_set_note can take " tbsaunde+gcc
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree-outof-ssa.c (emit_partition_copy): Return rtx_insn *.
	(insert_partition_copy_on_edge): Adjust.
	(insert_rtx_to_part_on_edge): Likewise.
	(insert_part_to_rtx_on_edge): Likewise.
---
 gcc/ChangeLog        |  7 +++++++
 gcc/tree-outof-ssa.c | 31 +++++++++++++------------------
 2 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ea48607..56d9d5d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* tree-outof-ssa.c (emit_partition_copy): Return rtx_insn *.
+	(insert_partition_copy_on_edge): Adjust.
+	(insert_rtx_to_part_on_edge): Likewise.
+	(insert_part_to_rtx_on_edge): Likewise.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* function.c (set_return_jump_label): Change type of argument to
 	rtx_insn *.
 	* function.h (set_return_jump_label): Adjust.
diff --git a/gcc/tree-outof-ssa.c b/gcc/tree-outof-ssa.c
index e6310cd..e23bc0b 100644
--- a/gcc/tree-outof-ssa.c
+++ b/gcc/tree-outof-ssa.c
@@ -242,11 +242,9 @@ set_location_for_edge (edge e)
    SRC/DEST might be BLKmode memory locations SIZEEXP is a tree from
    which we deduce the size to copy in that case.  */
 
-static inline rtx
+static inline rtx_insn *
 emit_partition_copy (rtx dest, rtx src, int unsignedsrcp, tree sizeexp)
 {
-  rtx seq;
-
   start_sequence ();
 
   if (GET_MODE (src) != VOIDmode && GET_MODE (src) != GET_MODE (dest))
@@ -259,7 +257,7 @@ emit_partition_copy (rtx dest, rtx src, int unsignedsrcp, tree sizeexp)
   else
     emit_move_insn (dest, src);
 
-  seq = get_insns ();
+  rtx_insn *seq = get_insns ();
   end_sequence ();
 
   return seq;
@@ -271,7 +269,6 @@ static void
 insert_partition_copy_on_edge (edge e, int dest, int src, source_location locus)
 {
   tree var;
-  rtx seq;
   if (dump_file && (dump_flags & TDF_DETAILS))
     {
       fprintf (dump_file,
@@ -291,10 +288,10 @@ insert_partition_copy_on_edge (edge e, int dest, int src, source_location locus)
     set_curr_insn_location (locus);
 
   var = partition_to_var (SA.map, src);
-  seq = emit_partition_copy (copy_rtx (SA.partition_to_pseudo[dest]),
-			     copy_rtx (SA.partition_to_pseudo[src]),
-			     TYPE_UNSIGNED (TREE_TYPE (var)),
-			     var);
+  rtx_insn *seq = emit_partition_copy (copy_rtx (SA.partition_to_pseudo[dest]),
+				       copy_rtx (SA.partition_to_pseudo[src]),
+				       TYPE_UNSIGNED (TREE_TYPE (var)),
+				       var);
 
   insert_insn_on_edge (seq, e);
 }
@@ -365,7 +362,6 @@ static void
 insert_rtx_to_part_on_edge (edge e, int dest, rtx src, int unsignedsrcp,
 			    source_location locus)
 {
-  rtx seq;
   if (dump_file && (dump_flags & TDF_DETAILS))
     {
       fprintf (dump_file,
@@ -387,9 +383,9 @@ insert_rtx_to_part_on_edge (edge e, int dest, rtx src, int unsignedsrcp,
      mems.  Usually we give the source.  As we result from SSA names
      the left and right size should be the same (and no WITH_SIZE_EXPR
      involved), so it doesn't matter.  */
-  seq = emit_partition_copy (copy_rtx (SA.partition_to_pseudo[dest]),
-			     src, unsignedsrcp,
-			     partition_to_var (SA.map, dest));
+  rtx_insn *seq = emit_partition_copy (copy_rtx (SA.partition_to_pseudo[dest]),
+				       src, unsignedsrcp,
+				       partition_to_var (SA.map, dest));
 
   insert_insn_on_edge (seq, e);
 }
@@ -401,7 +397,6 @@ static void
 insert_part_to_rtx_on_edge (edge e, rtx dest, int src, source_location locus)
 {
   tree var;
-  rtx seq;
   if (dump_file && (dump_flags & TDF_DETAILS))
     {
       fprintf (dump_file,
@@ -420,10 +415,10 @@ insert_part_to_rtx_on_edge (edge e, rtx dest, int src, source_location locus)
     set_curr_insn_location (locus);
 
   var = partition_to_var (SA.map, src);
-  seq = emit_partition_copy (dest,
-			     copy_rtx (SA.partition_to_pseudo[src]),
-			     TYPE_UNSIGNED (TREE_TYPE (var)),
-			     var);
+  rtx_insn *seq = emit_partition_copy (dest,
+				       copy_rtx (SA.partition_to_pseudo[src]),
+				       TYPE_UNSIGNED (TREE_TYPE (var)),
+				       var);
 
   insert_insn_on_edge (seq, e);
 }
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 09/13] make validate_replace_src_group take a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 05/13] kill_autoinc_value can " tbsaunde+gcc
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* recog.c (struct validate_replace_src_data): Change type of
	insn field to rtx_insn *.
	(validate_replace_src_group): Change type of argument to rtx_insn *.
	* recog.h (validate_replace_src_group): Adjust.
---
 gcc/ChangeLog | 7 +++++++
 gcc/recog.c   | 4 ++--
 gcc/recog.h   | 2 +-
 3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3490771..6f9e6c1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* recog.c (struct validate_replace_src_data): Change type of
+	insn field to rtx_insn *.
+	(validate_replace_src_group): Change type of argument to rtx_insn *.
+	* recog.h (validate_replace_src_group): Adjust.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* haifa-sched.c: Change the type of some variables to rtx_insn *.
 	* sched-deps.c: Likewise.
 	* sched-int.h: Likewise.
diff --git a/gcc/recog.c b/gcc/recog.c
index 53d89e0..a43055e 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -905,7 +905,7 @@ struct validate_replace_src_data
 {
   rtx from;			/* Old RTX */
   rtx to;			/* New RTX */
-  rtx insn;			/* Insn in which substitution is occurring.  */
+  rtx_insn *insn;			/* Insn in which substitution is occurring.  */
 };
 
 static void
@@ -921,7 +921,7 @@ validate_replace_src_1 (rtx *x, void *data)
    SET_DESTs.  */
 
 void
-validate_replace_src_group (rtx from, rtx to, rtx insn)
+validate_replace_src_group (rtx from, rtx to, rtx_insn *insn)
 {
   struct validate_replace_src_data d;
 
diff --git a/gcc/recog.h b/gcc/recog.h
index 51f2165..7d929ec 100644
--- a/gcc/recog.h
+++ b/gcc/recog.h
@@ -109,7 +109,7 @@ extern int validate_replace_rtx (rtx, rtx, rtx);
 extern int validate_replace_rtx_part (rtx, rtx, rtx *, rtx);
 extern int validate_replace_rtx_part_nosimplify (rtx, rtx, rtx *, rtx);
 extern void validate_replace_rtx_group (rtx, rtx, rtx);
-extern void validate_replace_src_group (rtx, rtx, rtx);
+extern void validate_replace_src_group (rtx, rtx, rtx_insn *);
 extern bool validate_simplify_insn (rtx insn);
 extern int num_changes_pending (void);
 extern int next_insn_tests_no_inequality (rtx);
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 08/13] make several functions in the scheduler take rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (10 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 01/13] change local vars to rtx_insn * tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 12/13] make set_return_jump_label take an " tbsaunde+gcc
  2015-05-04 17:16 ` [PATCH 00/13] further rtx_insn *ification Jeff Law
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* haifa-sched.c: Change the type of some variables to rtx_insn *.
	* sched-deps.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.
	* sel-sched.c: Likewise.
---
 gcc/ChangeLog     |  8 ++++++++
 gcc/haifa-sched.c | 30 +++++++++++++++---------------
 gcc/sched-deps.c  | 16 ++++++++--------
 gcc/sched-int.h   |  2 +-
 gcc/sched-rgn.c   | 10 +++++-----
 gcc/sel-sched.c   |  6 +++---
 6 files changed, 40 insertions(+), 32 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a1c86e0..3490771 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* haifa-sched.c: Change the type of some variables to rtx_insn *.
+	* sched-deps.c: Likewise.
+	* sched-int.h: Likewise.
+	* sched-rgn.c: Likewise.
+	* sel-sched.c: Likewise.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	to rtx_insn *.
 	* config/i386/i386.c: Change the type of some arguments to
 	rtx_insn *.
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index 9a662d0..e899746 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -881,7 +881,7 @@ static int early_queue_to_ready (state_t, struct ready_list *);
 /* The following functions are used to implement multi-pass scheduling
    on the first cycle.  */
 static rtx_insn *ready_remove (struct ready_list *, int);
-static void ready_remove_insn (rtx);
+static void ready_remove_insn (rtx_insn *);
 
 static void fix_inter_tick (rtx_insn *, rtx_insn *);
 static int fix_tick_ready (rtx_insn *);
@@ -894,7 +894,7 @@ static void extend_h_i_d (void);
 static void init_h_i_d (rtx_insn *);
 static int haifa_speculate_insn (rtx_insn *, ds_t, rtx *);
 static void generate_recovery_code (rtx_insn *);
-static void process_insn_forw_deps_be_in_spec (rtx, rtx_insn *, ds_t);
+static void process_insn_forw_deps_be_in_spec (rtx_insn *, rtx_insn *, ds_t);
 static void begin_speculative_block (rtx_insn *);
 static void add_to_speculative_block (rtx_insn *);
 static void init_before_recovery (basic_block *);
@@ -1390,7 +1390,7 @@ static rtx_insn *last_scheduled_insn;
    block, or the prev_head of the scheduling block.  Used by
    rank_for_schedule, so that insns independent of the last scheduled
    insn will be preferred over dependent instructions.  */
-static rtx last_nondebug_scheduled_insn;
+static rtx_insn *last_nondebug_scheduled_insn;
 
 /* Pointer that iterates through the list of unscheduled insns if we
    have a dbg_cnt enabled.  It always points at an insn prior to the
@@ -1598,7 +1598,7 @@ contributes_to_priority_p (dep_t dep)
 /* Compute the number of nondebug deps in list LIST for INSN.  */
 
 static int
-dep_list_size (rtx insn, sd_list_types_def list)
+dep_list_size (rtx_insn *insn, sd_list_types_def list)
 {
   sd_iterator_def sd_it;
   dep_t dep;
@@ -2787,7 +2787,7 @@ rank_for_schedule (const void *x, const void *y)
     {
       dep_t dep1;
       dep_t dep2;
-      rtx last = last_nondebug_scheduled_insn;
+      rtx_insn *last = last_nondebug_scheduled_insn;
 
       /* Classify the instructions into three classes:
          1) Data dependent on last schedule insn.
@@ -3032,7 +3032,7 @@ ready_remove (struct ready_list *ready, int index)
 
 /* Remove INSN from the ready list.  */
 static void
-ready_remove_insn (rtx insn)
+ready_remove_insn (rtx_insn *insn)
 {
   int i;
 
@@ -3287,7 +3287,7 @@ sched_setup_bb_reg_pressure_info (basic_block bb, rtx_insn *after)
    only be scheduled once their control dependency is resolved.  */
 
 static void
-check_clobbered_conditions (rtx insn)
+check_clobbered_conditions (rtx_insn *insn)
 {
   HARD_REG_SET t;
   int i;
@@ -4309,7 +4309,7 @@ struct haifa_saved_data
   state_t curr_state;
 
   rtx_insn *last_scheduled_insn;
-  rtx last_nondebug_scheduled_insn;
+  rtx_insn *last_nondebug_scheduled_insn;
   rtx_insn *nonscheduled_insns_begin;
   int cycle_issued_insns;
 
@@ -4339,7 +4339,7 @@ static struct haifa_saved_data *backtrack_queue;
 /* For every dependency of INSN, set the FEEDS_BACKTRACK_INSN bit according
    to SET_P.  */
 static void
-mark_backtrack_feeds (rtx insn, int set_p)
+mark_backtrack_feeds (rtx_insn *insn, int set_p)
 {
   sd_iterator_def sd_it;
   dep_t dep;
@@ -4485,7 +4485,7 @@ undo_replacements_for_backtrack (struct haifa_saved_data *save)
    queued nowhere.  */
 
 static void
-unschedule_insns_until (rtx insn)
+unschedule_insns_until (rtx_insn *insn)
 {
   auto_vec<rtx_insn *> recompute_vec;
 
@@ -5133,7 +5133,7 @@ queue_to_ready (struct ready_list *ready)
 {
   rtx_insn *insn;
   rtx_insn_list *link;
-  rtx skip_insn;
+  rtx_insn *skip_insn;
 
   q_ptr = NEXT_Q (q_ptr);
 
@@ -5142,7 +5142,7 @@ queue_to_ready (struct ready_list *ready)
        nonscheduled insn.  */
     skip_insn = first_nonscheduled_insn ();
   else
-    skip_insn = NULL_RTX;
+    skip_insn = NULL;
 
   /* Add all pending insns that can be scheduled without stalls to the
      ready list.  */
@@ -5237,7 +5237,7 @@ queue_to_ready (struct ready_list *ready)
    addition) depending on user flags and target hooks.  */
 
 static bool
-ok_for_early_queue_removal (rtx insn)
+ok_for_early_queue_removal (rtx_insn *insn)
 {
   if (targetm.sched.is_costly_dependence)
     {
@@ -6467,7 +6467,7 @@ schedule_block (basic_block *target_bb, state_t init_state)
 
   /* We start inserting insns after PREV_HEAD.  */
   last_scheduled_insn = prev_head;
-  last_nondebug_scheduled_insn = NULL_RTX;
+  last_nondebug_scheduled_insn = NULL;
   nonscheduled_insns_begin = NULL;
 
   gcc_assert ((NOTE_P (last_scheduled_insn)
@@ -7799,7 +7799,7 @@ generate_recovery_code (rtx_insn *insn)
    Tries to add speculative dependencies of type FS between instructions
    in deps_list L and TWIN.  */
 static void
-process_insn_forw_deps_be_in_spec (rtx insn, rtx_insn *twin, ds_t fs)
+process_insn_forw_deps_be_in_spec (rtx_insn *insn, rtx_insn *twin, ds_t fs)
 {
   sd_iterator_def sd_it;
   dep_t dep;
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c
index e624563..b6130ee 100644
--- a/gcc/sched-deps.c
+++ b/gcc/sched-deps.c
@@ -503,7 +503,7 @@ static void add_dependence_list (rtx_insn *, rtx_insn_list *, int,
 static void add_dependence_list_and_free (struct deps_desc *, rtx_insn *,
 					  rtx_insn_list **, int, enum reg_note,
 					  bool);
-static void delete_all_dependences (rtx);
+static void delete_all_dependences (rtx_insn *);
 static void chain_to_prev_insn (rtx_insn *);
 
 static void flush_pending_lists (struct deps_desc *, rtx_insn *, int, int);
@@ -1621,7 +1621,7 @@ add_dependence_list_and_free (struct deps_desc *deps, rtx_insn *insn,
    occurrences removed.  */
 
 static int
-remove_from_dependence_list (rtx insn, rtx_insn_list **listp)
+remove_from_dependence_list (rtx_insn *insn, rtx_insn_list **listp)
 {
   int removed = 0;
 
@@ -1642,7 +1642,7 @@ remove_from_dependence_list (rtx insn, rtx_insn_list **listp)
 
 /* Same as above, but process two lists at once.  */
 static int
-remove_from_both_dependence_lists (rtx insn,
+remove_from_both_dependence_lists (rtx_insn *insn,
 				   rtx_insn_list **listp,
 				   rtx_expr_list **exprp)
 {
@@ -1667,7 +1667,7 @@ remove_from_both_dependence_lists (rtx insn,
 
 /* Clear all dependencies for an insn.  */
 static void
-delete_all_dependences (rtx insn)
+delete_all_dependences (rtx_insn *insn)
 {
   sd_iterator_def sd_it;
   dep_t dep;
@@ -2211,7 +2211,7 @@ mark_insn_reg_clobber (rtx reg, const_rtx setter, void *data)
 
 /* Set up reg pressure info related to INSN.  */
 void
-init_insn_reg_pressure_info (rtx insn)
+init_insn_reg_pressure_info (rtx_insn *insn)
 {
   int i, len;
   enum reg_class cl;
@@ -3531,7 +3531,7 @@ sched_analyze_insn (struct deps_desc *deps, rtx x, rtx_insn *insn)
 /* FIXME: Why can't this function just use flags_from_decl_or_type and
    test for ECF_NORETURN?  */
 static bool
-call_may_noreturn_p (rtx insn)
+call_may_noreturn_p (rtx_insn *insn)
 {
   rtx call;
 
@@ -3594,7 +3594,7 @@ call_may_noreturn_p (rtx insn)
    instruction of that group.  */
 
 static bool
-chain_to_prev_insn_p (rtx insn)
+chain_to_prev_insn_p (rtx_insn *insn)
 {
   rtx prev, x;
 
@@ -3844,7 +3844,7 @@ sched_analyze (struct deps_desc *deps, rtx_insn *head, rtx_insn *tail)
 /* Helper for sched_free_deps ().
    Delete INSN's (RESOLVED_P) backward dependencies.  */
 static void
-delete_dep_nodes_in_back_deps (rtx insn, bool resolved_p)
+delete_dep_nodes_in_back_deps (rtx_insn *insn, bool resolved_p)
 {
   sd_iterator_def sd_it;
   dep_t dep;
diff --git a/gcc/sched-int.h b/gcc/sched-int.h
index 1cb0e2d..c93412e 100644
--- a/gcc/sched-int.h
+++ b/gcc/sched-int.h
@@ -1345,7 +1345,7 @@ extern void init_deps_global (void);
 extern void finish_deps_global (void);
 extern void deps_analyze_insn (struct deps_desc *, rtx_insn *);
 extern void remove_from_deps (struct deps_desc *, rtx_insn *);
-extern void init_insn_reg_pressure_info (rtx);
+extern void init_insn_reg_pressure_info (rtx_insn *);
 
 extern dw_t get_dep_weak (ds_t, ds_t);
 extern ds_t set_dep_weak (ds_t, ds_t, dw_t);
diff --git a/gcc/sched-rgn.c b/gcc/sched-rgn.c
index 7efd4ad..f2d5438 100644
--- a/gcc/sched-rgn.c
+++ b/gcc/sched-rgn.c
@@ -240,10 +240,10 @@ static edgeset *ancestor_edges;
 static int check_live_1 (int, rtx);
 static void update_live_1 (int, rtx);
 static int is_pfree (rtx, int, int);
-static int find_conditional_protection (rtx, int);
+static int find_conditional_protection (rtx_insn *, int);
 static int is_conditionally_protected (rtx, int, int);
 static int is_prisky (rtx, int, int);
-static int is_exception_free (rtx, int, int);
+static int is_exception_free (rtx_insn *, int, int);
 
 static bool sets_likely_spilled (rtx);
 static void sets_likely_spilled_1 (rtx, const_rtx, void *);
@@ -1841,7 +1841,7 @@ check_live (rtx_insn *insn, int src)
    block src to trg.  */
 
 static void
-update_live (rtx insn, int src)
+update_live (rtx_insn *insn, int src)
 {
   /* Find the registers set by instruction.  */
   if (GET_CODE (PATTERN (insn)) == SET
@@ -1882,7 +1882,7 @@ set_spec_fed (rtx load_insn)
 branch depending on insn, that guards the speculative load.  */
 
 static int
-find_conditional_protection (rtx insn, int load_insn_bb)
+find_conditional_protection (rtx_insn *insn, int load_insn_bb)
 {
   sd_iterator_def sd_it;
   dep_t dep;
@@ -2042,7 +2042,7 @@ is_prisky (rtx load_insn, int bb_src, int bb_trg)
    and 0 otherwise.  */
 
 static int
-is_exception_free (rtx insn, int bb_src, int bb_trg)
+is_exception_free (rtx_insn *insn, int bb_src, int bb_trg)
 {
   int insn_class = haifa_classify_insn (insn);
 
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c
index 9443629..7daeec3 100644
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -614,7 +614,7 @@ advance_one_cycle (fence_t fence)
 /* Returns true when SUCC in a fallthru bb of INSN, possibly
    skipping empty basic blocks.  */
 static bool
-in_fallthru_bb_p (rtx insn, rtx succ)
+in_fallthru_bb_p (rtx_insn *insn, rtx succ)
 {
   basic_block bb = BLOCK_FOR_INSN (insn);
   edge e;
@@ -1853,7 +1853,7 @@ create_speculation_check (expr_t c_expr, ds_t check_ds, insn_t orig_insn)
 
 /* True when INSN is a "regN = regN" copy.  */
 static bool
-identical_copy_p (rtx insn)
+identical_copy_p (rtx_insn *insn)
 {
   rtx lhs, rhs, pat;
 
@@ -5830,7 +5830,7 @@ move_op_after_merge_succs (cmpd_local_params_p lp, void *sparams)
 /* Track bookkeeping copies created, insns scheduled, and blocks for
    rescheduling when INSN is found by move_op.  */
 static void
-track_scheduled_insns_and_blocks (rtx insn)
+track_scheduled_insns_and_blocks (rtx_insn *insn)
 {
   /* Even if this insn can be a copy that will be removed during current move_op,
      we still need to count it as an originator.  */
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 05/13] kill_autoinc_value can take a rtx_insn *
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 09/13] make validate_replace_src_group take a rtx_insn * tbsaunde+gcc
@ 2015-05-02 21:02 ` tbsaunde+gcc
  2015-05-02 21:02 ` [PATCH 10/13] make fp_setter_insn " tbsaunde+gcc
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbsaunde+gcc @ 2015-05-02 21:02 UTC (permalink / raw)
  To: gcc-patches

From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>

gcc/ChangeLog:

2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* regcprop.c (kill_autoinc_value): Change type of argument to
	rtx_insn *.
---
 gcc/ChangeLog  | 5 +++++
 gcc/regcprop.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e702301..6807ec5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
 2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
+	* regcprop.c (kill_autoinc_value): Change type of argument to
+	rtx_insn *.
+
+2015-05-02  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
 	* genrecog.c (print_subroutine): Adjust.
 	* recog.c (get_bool_attr_mask_uncached): Likewise.
 	* recog.h (struct recog_data_d): Change the type of insn to
diff --git a/gcc/regcprop.c b/gcc/regcprop.c
index c809e77..f681eef 100644
--- a/gcc/regcprop.c
+++ b/gcc/regcprop.c
@@ -285,7 +285,7 @@ kill_set_value (rtx x, const_rtx set, void *data)
    and install that register as the root of its own value list.  */
 
 static void
-kill_autoinc_value (rtx insn, struct value_data *vd)
+kill_autoinc_value (rtx_insn *insn, struct value_data *vd)
 {
   subrtx_iterator::array_type array;
   FOR_EACH_SUBRTX (iter, array, PATTERN (insn), NONCONST)
-- 
2.4.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/13] further rtx_insn *ification
  2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
                   ` (12 preceding siblings ...)
  2015-05-02 21:02 ` [PATCH 12/13] make set_return_jump_label take an " tbsaunde+gcc
@ 2015-05-04 17:16 ` Jeff Law
  13 siblings, 0 replies; 15+ messages in thread
From: Jeff Law @ 2015-05-04 17:16 UTC (permalink / raw)
  To: tbsaunde+gcc, gcc-patches

On 05/02/2015 03:01 PM, tbsaunde+gcc@tbsaunde.org wrote:
> From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
>
> Hi,
>
> This set of patches changes rtx to rtx_insn * in many plaes where its fairly
> trivial to do so.
>
> each was bootstrapped + regtested on x86_64-linux-gnu, and the series was run
> through config-list.mk.  I believe this all falls under Jeff's preapproval from
> last year for this sort of thing which I assume is still valid, so committing
> to trunk.
And just to be explicit, it does fall under that preapproval for such 
changes.

Jeff

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-05-04 17:16 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-02 21:02 [PATCH 00/13] further rtx_insn *ification tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 09/13] make validate_replace_src_group take a rtx_insn * tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 05/13] kill_autoinc_value can " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 10/13] make fp_setter_insn " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 13/13] make emit_partition_copy return " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 02/13] df_set_note can take " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 03/13] add_cfi_insn can be " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 04/13] recog_data::insn " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 07/13] make some functions in config/ take " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 06/13] make some functions in lra-constraints.c take " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 11/13] type reg_equiv_init as rtx_insn_list tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 01/13] change local vars to rtx_insn * tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 08/13] make several functions in the scheduler take " tbsaunde+gcc
2015-05-02 21:02 ` [PATCH 12/13] make set_return_jump_label take an " tbsaunde+gcc
2015-05-04 17:16 ` [PATCH 00/13] further rtx_insn *ification Jeff Law

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).