Revert previous delta
[deliverable/binutils-gdb.git] / gas / app.c
index b1e5f4c9dda7200028a9f4b5e14c10034d3cc8cf..1dbc49a8cd894f79667966a7ce47314874d6e914 100644 (file)
--- a/gas/app.c
+++ b/gas/app.c
@@ -87,15 +87,14 @@ static const char symbol_chars[] =
 #define IS_LINE_COMMENT(c)             (lex[c] == LEX_IS_LINE_COMMENT_START)
 #define        IS_NEWLINE(c)                   (lex[c] == LEX_IS_NEWLINE)
 
-static int process_escape PARAMS ((int));
+static int process_escape (int);
 
 /* FIXME-soon: The entire lexer/parser thingy should be
    built statically at compile time rather than dynamically
    each and every time the assembler is run.  xoxorich.  */
 
 void
-do_scrub_begin (m68k_mri)
-     int m68k_mri ATTRIBUTE_UNUSED;
+do_scrub_begin (int m68k_mri ATTRIBUTE_UNUSED)
 {
   const char *p;
   int c;
@@ -231,7 +230,7 @@ struct app_save
 };
 
 char *
-app_push ()
+app_push (void)
 {
   register struct app_save *saved;
 
@@ -267,8 +266,7 @@ app_push ()
 }
 
 void
-app_pop (arg)
-     char *arg;
+app_pop (char *arg)
 {
   register struct app_save *saved = (struct app_save *) arg;
 
@@ -304,8 +302,7 @@ app_pop (arg)
    necessarily true.  */
 
 static int
-process_escape (ch)
-     int ch;
+process_escape (int ch)
 {
   switch (ch)
     {
@@ -340,10 +337,7 @@ process_escape (ch)
    This is the way the old code used to work.  */
 
 int
-do_scrub_chars (get, tostart, tolen)
-     int (*get) PARAMS ((char *, int));
-     char *tostart;
-     int tolen;
+do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
 {
   char *to = tostart;
   char *toend = tostart + tolen;
@@ -373,6 +367,12 @@ do_scrub_chars (get, tostart, tolen)
 #ifdef DOUBLEBAR_PARALLEL
         13: After seeing a vertical bar, looking for a second
             vertical bar as a parallel expression separator.
+#endif
+#ifdef TC_IA64
+        14: After seeing a `(' at state 0, looking for a `)' as
+            predicate.
+        15: After seeing a `(' at state 1, looking for a `)' as
+            predicate.
 #endif
          */
 
@@ -674,6 +674,29 @@ do_scrub_chars (get, tostart, tolen)
       /* flushchar: */
       ch = GET ();
 
+#ifdef TC_IA64
+      if (ch == '(' && (state == 0 || state == 1))
+       {
+         state += 14;
+         PUT (ch);
+         continue;
+       }
+      else if (state == 14 || state == 15)
+       {
+         if (ch == ')')
+           {
+             state -= 14;
+             PUT (ch);
+             ch = GET ();
+           }
+         else
+           {
+             PUT (ch);
+             continue;
+           }
+       }
+#endif
+
     recycle:
 
 #if defined TC_ARM && defined OBJ_ELF
@@ -1289,13 +1312,11 @@ do_scrub_chars (get, tostart, tolen)
          /* Some relatively `normal' character.  */
          if (state == 0)
            {
-             if (IS_SYMBOL_COMPONENT (ch))
-               state = 11;     /* Now seeing label definition.  */
+             state = 11;       /* Now seeing label definition.  */
            }
          else if (state == 1)
            {
-             if (IS_SYMBOL_COMPONENT (ch))
-               state = 2;      /* Ditto.  */
+             state = 2;        /* Ditto.  */
            }
          else if (state == 9)
            {
This page took 0.034731 seconds and 4 git commands to generate.