summaryrefslogtreecommitdiff
path: root/gas/read.c
diff options
context:
space:
mode:
Diffstat (limited to 'gas/read.c')
-rw-r--r--gas/read.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/gas/read.c b/gas/read.c
index 93e3ec41b1..e1f7a2f87a 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -216,6 +216,7 @@ static int dwarf_file_string;
static void do_align (int, char *, int, int);
static void s_align (int, int);
+static void s_altmacro (int);
static int hex_float (int, char *);
static segT get_known_segmented_expression (expressionS * expP);
static void pobegin (void);
@@ -251,6 +252,7 @@ static struct hash_control *po_hash;
static const pseudo_typeS potable[] = {
{"abort", s_abort, 0},
{"align", s_align_ptwo, 0},
+ {"altmacro", s_altmacro, 1},
{"ascii", stringer, 0},
{"asciz", stringer, 1},
{"balign", s_align_bytes, 0},
@@ -351,6 +353,7 @@ static const pseudo_typeS potable[] = {
{"mri", s_mri, 0},
{".mri", s_mri, 0}, /* Special case so .mri works in MRI mode. */
{"name", s_ignore, 0},
+ {"noaltmacro", s_altmacro, 0},
{"noformat", s_ignore, 0},
{"nolist", listing_list, 0}, /* Turn listing off. */
{"nopage", listing_nopage, 0},
@@ -1320,6 +1323,15 @@ s_align_ptwo (int arg)
s_align (arg, 0);
}
+/* Switch in and out of alternate macro mode. */
+
+void
+s_altmacro (int on)
+{
+ demand_empty_rest_of_line ();
+ macro_set_alternate (on);
+}
+
symbolS *
s_comm_internal (int param,
symbolS *(*comm_parse_extra) (int, symbolS *, addressT))