This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 209/236] sched-vis.c: Use rtx_sequence


gcc/
	* sched-vis.c (print_pattern): Within SEQUENCE case, introduce a
	local "seq" via a checked cast, and use methods of rtx_sequence
	to simplify the code.
---
 gcc/sched-vis.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/gcc/sched-vis.c b/gcc/sched-vis.c
index 6f89e08..ead6b4e 100644
--- a/gcc/sched-vis.c
+++ b/gcc/sched-vis.c
@@ -578,8 +578,9 @@ print_pattern (pretty_printer *pp, const_rtx x, int verbose)
       break;
     case SEQUENCE:
       {
+	const rtx_sequence *seq = as_a <const rtx_sequence *> (x);
 	pp_string (pp, "sequence{");
-	if (INSN_P (XVECEXP (x, 0, 0)))
+	if (INSN_P (seq->element (0)))
 	  {
 	    /* Print the sequence insns indented.  */
 	    const char * save_print_rtx_head = print_rtx_head;
@@ -591,16 +592,16 @@ print_pattern (pretty_printer *pp, const_rtx x, int verbose)
 		      sizeof (indented_print_rtx_head),
 		      "%s     ", print_rtx_head);
 	    print_rtx_head = indented_print_rtx_head;
-	    for (int i = 0; i < XVECLEN (x, 0); i++)
-	      print_insn_with_notes (pp, XVECEXP (x, 0, i));
+	    for (int i = 0; i < seq->len (); i++)
+	      print_insn_with_notes (pp, seq->insn (i));
 	    pp_printf (pp, "%s      ", save_print_rtx_head);
 	    print_rtx_head = save_print_rtx_head;
 	  }
 	else
 	  {
-	    for (int i = 0; i < XVECLEN (x, 0); i++)
+	    for (int i = 0; i < seq->len (); i++)
 	      {
-		print_pattern (pp, XVECEXP (x, 0, i), verbose);
+		print_pattern (pp, seq->element (i), verbose);
 		pp_semicolon (pp);
 	      }
 	  }
-- 
1.8.5.3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]