* read-rtl.c (read_rtx): Tidy use of format_ptr.
authorRichard Sandiford <rsandifo@redhat.com>
Mon, 23 Aug 2004 05:52:37 +0000 (05:52 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Mon, 23 Aug 2004 05:52:37 +0000 (05:52 +0000)
From-SVN: r86403

gcc/ChangeLog
gcc/read-rtl.c

index 3639ad68c90a1b6343df55154012ad7b9097d042..c442371f6579272ad25554000affb18de551448c 100644 (file)
@@ -1,3 +1,7 @@
+2004-08-23  Richard Sandiford  <rsandifo@redhat.com>
+
+       * read-rtl.c (read_rtx): Tidy use of format_ptr.
+
 2004-08-23  Richard Sandiford  <rsandifo@redhat.com>
 
        * read-rtl.c (string_obstack): New file-scope variable.
index 57bdfa009663b6900f01310afc9dd23bc71117d9..2b9bd915d23ac279a95ed1e888bcb743d6cda228 100644 (file)
@@ -598,8 +598,8 @@ again:
   else
     ungetc (i, infile);
 
-  for (i = 0; i < GET_RTX_LENGTH (GET_CODE (return_rtx)); i++)
-    switch (*format_ptr++)
+  for (i = 0; format_ptr[i] != 0; i++)
+    switch (format_ptr[i])
       {
        /* 0 means a field for internal use only.
           Don't expect it to be present in the input.  */
@@ -668,7 +668,7 @@ again:
              /* 'S' fields are optional and should be NULL if no string
                 was given.  Also allow normal 's' and 'T' strings to be
                 omitted, treating them in the same way as empty strings.  */
-             XSTR (return_rtx, i) = (format_ptr[-1] == 'S' ? NULL : "");
+             XSTR (return_rtx, i) = (format_ptr[i] == 'S' ? NULL : "");
              break;
            }
 
@@ -676,7 +676,7 @@ again:
             DEFINE_INSN_AND_SPLIT, or DEFINE_PEEPHOLE automatically
             gets a star inserted as its first character, if it is
             written with a brace block instead of a string constant.  */
-         star_if_braced = (format_ptr[-1] == 'T');
+         star_if_braced = (format_ptr[i] == 'T');
 
          stringbuf = read_string (infile, star_if_braced);
 
@@ -741,7 +741,7 @@ again:
       default:
        fprintf (stderr,
                 "switch format wrong in rtl.read_rtx(). format was: %c.\n",
-                format_ptr[-1]);
+                format_ptr[i]);
        fprintf (stderr, "\tfile position: %ld\n", ftell (infile));
        abort ();
       }