* read.c (mri_comment_field): New function.
authorIan Lance Taylor <ian@airs.com>
Mon, 18 Sep 1995 21:53:40 +0000 (21:53 +0000)
committerIan Lance Taylor <ian@airs.com>
Mon, 18 Sep 1995 21:53:40 +0000 (21:53 +0000)
(mri_comment_end): New function.
(s_align_bytes): Use mri_comment_field.
(s_align_ptwo, s_comm, s_mri_common, s_fail, s_globl): Likewise.
(s_float_space, s_struct): Likewise.
(s_space): Use mri_comment_field rather than doing it by hand.
(cons_worker, equals): Likewise.
(s_end): Ignore comments starting with '*' or '!'.
* read.h (mri_comment_field): Declare.
(mri_comment_end): Declare.
* cond.c (s_if): Use mri_comment_field.
* config/tc-m68k.c (s_chip, s_reg): Likewise.

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

index fd3cde624f344bb91b83d8cbca43e18251371aac..c8df738cb2b35cfc0d657b1b2890b819010d8d8f 100644 (file)
@@ -1,5 +1,18 @@
 Mon Sep 18 15:22:28 1995  Ian Lance Taylor  <ian@cygnus.com>
 
+       * read.c (mri_comment_field): New function.
+       (mri_comment_end): New function.
+       (s_align_bytes): Use mri_comment_field.
+       (s_align_ptwo, s_comm, s_mri_common, s_fail, s_globl): Likewise.
+       (s_float_space, s_struct): Likewise.
+       (s_space): Use mri_comment_field rather than doing it by hand.
+       (cons_worker, equals): Likewise.
+       (s_end): Ignore comments starting with '*' or '!'.
+       * read.h (mri_comment_field): Declare.
+       (mri_comment_end): Declare.
+       * cond.c (s_if): Use mri_comment_field.
+       * config/tc-m68k.c (s_chip, s_reg): Likewise.
+
        * write.c (fixup_segment): Handle ABS-sym in -sym case rather than
        sym-sym case.
        * config/obj-coff.c (fixup_segment): Likewise.  Permit negative
index 0e8fa25568b125d3a5b874e58b7ebf82564a0fd5..e4a1ff896baa01dfb2231b0d6c6412f2ddbcb229 100644 (file)
@@ -4232,7 +4232,14 @@ static void
 s_chip (ignore)
      int ignore;
 {
+  char *stop = NULL;
+  char stopc;
+
+  if (flag_mri)
+    stop = mri_comment_field (&stopc);
   mri_chip ();
+  if (flag_mri)
+    mri_comment_end (stop, stopc);
   demand_empty_rest_of_line ();
 }
 
@@ -4493,6 +4500,8 @@ s_reg (ignore)
   int c;
   struct m68k_op rop;
   unsigned long mask;
+  char *stop = NULL;
+  char stopc;
 
   if (line_label == NULL)
     {
@@ -4501,6 +4510,9 @@ s_reg (ignore)
       return;
     }
 
+  if (flag_mri)
+    stop = mri_comment_field (&stopc);
+
   SKIP_WHITESPACE ();
 
   s = input_line_pointer;
@@ -4556,11 +4568,7 @@ s_reg (ignore)
   line_label->sy_frag = &zero_address_frag;
 
   if (flag_mri)
-    {
-      /* Ignore the comment field.  */
-      while (! is_end_of_line[(unsigned char) *input_line_pointer])
-       ++input_line_pointer;
-    }
+    mri_comment_end (stop, stopc);
 
   demand_empty_rest_of_line ();
 }