* read.c (mri_line_label): Make non-static.
authorIan Lance Taylor <ian@airs.com>
Wed, 9 Aug 1995 23:16:06 +0000 (23:16 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 9 Aug 1995 23:16:06 +0000 (23:16 +0000)
(potable): Add nopage, page, plen.
(s_org): Error if in MRI mode.
* read.h (mri_line_label): Declare.
* listing.c (listing_nopage): New function.
* listing.h (listing_nopage): Declare.

gas/read.c
gas/read.h

index af8c775cba4e5ebea152da2958779bcc44fb92b0..47847ccf62c6ad29dafe1684506e1f4ce3a1c9df 100644 (file)
@@ -176,7 +176,7 @@ addressT abs_section_offset;
 
 /* If this line had an MRI style label, it is stored in this variable.
    This is used by some of the MRI pseudo-ops.  */
-static symbolS *mri_line_label;
+symbolS *mri_line_label;
 
 /* This global variable is used to support MRI common sections.  We
    translate such sections into a common symbol.  This variable is
@@ -309,10 +309,13 @@ static const pseudo_typeS potable[] =
   {"lsym", s_lsym, 0},
   {"noformat", s_ignore, 0},
   {"nolist", listing_list, 0}, /* Turn listing off */
+  {"nopage", listing_nopage, 0},
   {"octa", cons, 16},
   {"offset", s_struct, 0},
   {"org", s_org, 0},
   {"p2align", s_align_ptwo, 0},
+  {"page", listing_eject, 0},
+  {"plen", listing_psize, 0},
   {"psize", listing_psize, 0}, /* set paper size */
 /* print */
   {"quad", cons, 8},
@@ -1603,6 +1606,16 @@ s_org (ignore)
   expressionS exp;
   register long temp_fill;
 
+  /* The MRI assembler has a different meaning for .org.  It means to
+     create an absolute section at a given address.  We can't support
+     that--use a linker script instead.  */
+  if (flag_mri)
+    {
+      as_bad ("MRI style ORG pseudo-op not supported");
+      ignore_rest_of_line ();
+      return;
+    }
+
   /* Don't believe the documentation of BSD 4.2 AS.  There is no such
      thing as a sub-segment-relative origin.  Any absolute origin is
      given a warning, then assumed to be segment-relative.  Any
index 4a00b327cc8590c3d9d73b4a0c41ed940bed5b35..e2f51ef666f1ee2de321484c0f4c4c2b67b5ba73 100644 (file)
@@ -63,6 +63,9 @@ extern int generate_asm_lineno;
 /* The offset in the absolute section.  */
 extern addressT abs_section_offset;
 
+/* The MRI label on a line, used by some of the MRI pseudo-ops.  */
+extern symbolS *mri_line_label;
+
 /* This is used to support MRI common sections.  */
 extern symbolS *mri_common_symbol;