]> git.saurik.com Git - bison.git/commitdiff
* src/print_graph.c (print_core): Better locality of variables.
authorAkim Demaille <akim@epita.fr>
Mon, 19 Nov 2001 10:28:43 +0000 (10:28 +0000)
committerAkim Demaille <akim@epita.fr>
Mon, 19 Nov 2001 10:28:43 +0000 (10:28 +0000)
* src/print.c (print_core): Likewise.

ChangeLog
src/print.c
src/print_graph.c

index dfa55ce378f5d3f86b2ebb57fea9463da2e9276e..076380983041706afe06ca8197a5e9619a40377f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-11-19  Akim Demaille  <akim@epita.fr>
+
+       * src/print_graph.c (print_core): Better locality of variables.
+       * src/print.c (print_core): Likewise.
+
 2001-11-19  Akim Demaille  <akim@epita.fr>
 
        * src/vcg.c: You do the output, so you are responsible of the
index 96b64e8845ad783bca9fff1b757d9ab847d4a9dd..2c2b84206ceb245e5e9181bd418dc20ad94a2760 100644 (file)
@@ -48,20 +48,17 @@ static void
 print_core (FILE *out, int state)
 {
   int i;
-  int k;
-  int rule;
-  core *statep;
-  short *sp;
-  short *sp1;
-
-  statep = state_table[state].state;
-  k = statep->nitems;
+  core *statep = state_table[state].state;
 
-  if (k == 0)
+  if (!statep->nitems)
     return;
 
-  for (i = 0; i < k; i++)
+  for (i = 0; i < statep->nitems; i++)
     {
+      short *sp;
+      short *sp1;
+      int rule;
+
       sp1 = sp = ritem + statep->items[i];
 
       while (*sp > 0)
@@ -71,17 +68,12 @@ print_core (FILE *out, int state)
       fprintf (out, "    %s  ->  ", tags[rule_table[rule].lhs]);
 
       for (sp = ritem + rule_table[rule].rhs; sp < sp1; sp++)
-       {
-         fprintf (out, "%s ", tags[*sp]);
-       }
+       fprintf (out, "%s ", tags[*sp]);
 
       fputc ('.', out);
 
-      while (*sp > 0)
-       {
-         fprintf (out, " %s", tags[*sp]);
-         sp++;
-       }
+      for (/* Nothing */; *sp > 0; ++sp)
+       fprintf (out, " %s", tags[*sp]);
 
       fprintf (out, _("   (rule %d)"), rule);
       fputc ('\n', out);
index ced951b0386f16f02b4d8ba757642d7bbf274afe..7caba6f8e72b8711e808d754ff2073b92b8f5ad3 100644 (file)
@@ -40,22 +40,16 @@ static void
 print_core (int state, struct obstack *node_obstack)
 {
   int i;
-  int k;
-  int rule;
-  core *statep;
-  short *sp;
-  short *sp1;
+  core *statep = state_table[state].state;
 
-  statep = state_table[state].state;
-  k = statep->nitems;
-
-  if (k == 0)
+  if (!statep->nitems)
     return;
 
-  for (i = 0; i < k; i++)
+  for (i = 0; i < statep->nitems; i++)
     {
-      if (i)
-       obstack_1grow (node_obstack, '\n');
+      short *sp;
+      short *sp1;
+      int rule;
 
       sp1 = sp = ritem + statep->items[i];
 
@@ -64,6 +58,8 @@ print_core (int state, struct obstack *node_obstack)
 
       rule = -(*sp);
 
+      if (i)
+       obstack_1grow (node_obstack, '\n');
       obstack_fgrow1 (node_obstack, "%d: ", rule);
       obstack_fgrow1 (node_obstack, " %s  ->  ",
                      tags[rule_table[rule].lhs]);
@@ -73,8 +69,8 @@ print_core (int state, struct obstack *node_obstack)
 
       obstack_1grow (node_obstack, '.');
 
-      while (*sp > 0)
-       obstack_fgrow1 (node_obstack, " %s", tags[*sp++]);
+      for (/* Nothing */; *sp > 0; ++sp)
+       obstack_fgrow1 (node_obstack, " %s", tags[*sp]);
     }
 }