gas/
authorJan Beulich <jbeulich@novell.com>
Wed, 26 Sep 2007 06:58:01 +0000 (06:58 +0000)
committerJan Beulich <jbeulich@novell.com>
Wed, 26 Sep 2007 06:58:01 +0000 (06:58 +0000)
2007-09-26  Jan Beulich  <jbeulich@novell.com>

* config/tc-ia64.c (dot_pred_rel): Replace specialized handling
with simple call to parse_operand.

gas/ChangeLog
gas/config/tc-ia64.c

index 06df1e6da98e15de96884dbda05d22b8f48fbed7..0b5829fdb598e1efc4fe4f6f1b63d6130962105b 100644 (file)
@@ -1,3 +1,8 @@
+2007-09-26  Jan Beulich  <jbeulich@novell.com>
+
+       * config/tc-ia64.c (dot_pred_rel): Replace specialized handling
+       with simple call to parse_operand.
+
 2007-09-26  Jan Beulich  <jbeulich@novell.com>
 
        * config/tc-i386.c (NUM_FLAG_CODE): Remove.
index d6fcb2cc7abfba633cfe7008600032bafc0bc195..04995cc86d68ea3310862b128c20fff0f45c02a8 100644 (file)
@@ -5282,14 +5282,13 @@ dot_pred_rel (type)
       SKIP_WHITESPACE ();
     }
 
-  SKIP_WHITESPACE ();
   while (1)
     {
       valueT bits = 1;
-      int regno;
+      int sep, regno;
       expressionS pr, *pr1, *pr2;
 
-      expression_and_evaluate (&pr);
+      sep = parse_operand (&pr, ',');
       if (pr.X_op == O_register
          && pr.X_add_number >= REG_P
          && pr.X_add_number <= REG_P + 63)
@@ -5336,10 +5335,8 @@ dot_pred_rel (type)
       if (mask & bits)
        as_warn (_("Duplicate predicate register ignored"));
       mask |= bits;
-      if (*input_line_pointer != ',')
+      if (sep != ',')
        break;
-      ++input_line_pointer;
-      SKIP_WHITESPACE ();
     }
 
   switch (type)