* read.c (mri_line_label): Make non-static.

(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.
This commit is contained in:
Ian Lance Taylor 1995-08-09 23:16:06 +00:00
parent db317fe7a7
commit 69e077f3c7
2 changed files with 17 additions and 1 deletions

View 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

View 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;