aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
Diffstat (limited to 'gas')
-rw-r--r--gas/as.c2
-rw-r--r--gas/macro.c55
-rw-r--r--gas/macro.h3
-rw-r--r--gas/read.c2
4 files changed, 23 insertions, 39 deletions
diff --git a/gas/as.c b/gas/as.c
index 357c13b..3987366 100644
--- a/gas/as.c
+++ b/gas/as.c
@@ -1310,7 +1310,7 @@ gas_init (void)
expr_begin ();
eh_begin ();
- macro_init (flag_macro_alternate, flag_mri);
+ macro_init (flag_macro_alternate);
dwarf2_init ();
diff --git a/gas/macro.c b/gas/macro.c
index 25ce962..5d3b0f2 100644
--- a/gas/macro.c
+++ b/gas/macro.c
@@ -34,7 +34,7 @@
#define ISSEP(x) \
((x) == ' ' || (x) == '\t' || (x) == ',' || (x) == '"' || (x) == ';' \
|| (x) == ')' || (x) == '(' \
- || ((macro_alternate || macro_mri) && ((x) == '<' || (x) == '>')))
+ || ((macro_alternate || flag_mri) && ((x) == '<' || (x) == '>')))
#define ISBASE(x) \
((x) == 'b' || (x) == 'B' \
@@ -54,10 +54,6 @@ int macro_defined;
static int macro_alternate;
-/* Whether we are in MRI mode. */
-
-static int macro_mri;
-
/* Whether we should strip '@' characters. */
#define macro_strip_at false
@@ -78,13 +74,12 @@ macro_del_f (void *ent)
/* Initialize macro processing. */
void
-macro_init (int alternate, int mri)
+macro_init (int alternate)
{
macro_hash = htab_create_alloc (16, hash_string_tuple, eq_string_tuple,
macro_del_f, notes_calloc, NULL);
macro_defined = 0;
macro_alternate = alternate;
- macro_mri = mri;
}
void
@@ -101,14 +96,6 @@ macro_set_alternate (int alternate)
macro_alternate = alternate;
}
-/* Switch in and out of MRI mode on the fly. */
-
-void
-macro_mri_mode (int mri)
-{
- macro_mri = mri;
-}
-
/* Read input lines till we get to a TO string.
Increase nesting depth if we get a FROM string.
Put the results into sb at PTR.
@@ -205,7 +192,7 @@ buffer_and_nest (const char *from, const char *to, sb *ptr,
if (i < ptr->len && (ptr->ptr[i] == '.'
|| NO_PSEUDO_DOT
- || macro_mri))
+ || flag_mri))
{
if (! flag_m68k_mri && ptr->ptr[i] == '.')
i++;
@@ -309,7 +296,7 @@ getstring (size_t idx, sb *in, sb *acc)
{
while (idx < in->len
&& (in->ptr[idx] == '"'
- || (in->ptr[idx] == '<' && (macro_alternate || macro_mri))
+ || (in->ptr[idx] == '<' && (macro_alternate || flag_mri))
|| (in->ptr[idx] == '\'' && macro_alternate)))
{
if (in->ptr[idx] == '<')
@@ -423,7 +410,7 @@ get_any_string (size_t idx, sb *in, sb *out)
sb_add_string (out, buf);
}
else if (in->ptr[idx] == '"'
- || (in->ptr[idx] == '<' && (macro_alternate || macro_mri))
+ || (in->ptr[idx] == '<' && (macro_alternate || flag_mri))
|| (macro_alternate && in->ptr[idx] == '\''))
{
if (macro_alternate && ! macro_strip_at && in->ptr[idx] != '<')
@@ -450,7 +437,7 @@ get_any_string (size_t idx, sb *in, sb *out)
&& in->ptr[idx] != '\t'))
&& in->ptr[idx] != ','
&& (in->ptr[idx] != '<'
- || (! macro_alternate && ! macro_mri)))
+ || (! macro_alternate && ! flag_mri)))
{
char tchar = in->ptr[idx];
@@ -553,7 +540,7 @@ do_formals (macro_entry *macro, size_t idx, sb *in)
idx = sb_skip_white (idx, in);
/* This is a formal. */
name = sb_terminate (&formal->name);
- if (! macro_mri
+ if (! flag_mri
&& idx < in->len
&& in->ptr[idx] == ':'
&& (! is_name_beginner (':')
@@ -625,7 +612,7 @@ do_formals (macro_entry *macro, size_t idx, sb *in)
}
}
- if (macro_mri)
+ if (flag_mri)
{
formal_entry *formal = new_formal ();
@@ -764,7 +751,7 @@ get_apost_token (size_t idx, sb *in, sb *name, int kind)
idx = get_token (idx, in, name);
if (idx < in->len
&& in->ptr[idx] == kind
- && (! macro_mri || macro_strip_at)
+ && (! flag_mri || macro_strip_at)
&& (! macro_strip_at || kind == '@'))
idx++;
return idx;
@@ -838,7 +825,7 @@ macro_expand_body (sb *in, sb *out, formal_entry *formals,
if (in->ptr[src] == '&')
{
sb_reset (&t);
- if (macro_mri)
+ if (flag_mri)
{
if (src + 1 < in->len && in->ptr[src + 1] == '&')
src = sub_actual (src + 2, in, &t, formal_hash, '\'', out, 1);
@@ -887,7 +874,7 @@ macro_expand_body (sb *in, sb *out, formal_entry *formals,
sb_add_char (out, '&');
src++;
}
- else if (macro_mri && src < in->len && ISALNUM (in->ptr[src]))
+ else if (flag_mri && src < in->len && ISALNUM (in->ptr[src]))
{
int ind;
formal_entry *f;
@@ -917,7 +904,7 @@ macro_expand_body (sb *in, sb *out, formal_entry *formals,
src = sub_actual (src, in, &t, formal_hash, '\'', out, 0);
}
}
- else if ((macro_alternate || macro_mri)
+ else if ((macro_alternate || flag_mri)
&& is_name_beginner (in->ptr[src])
&& (! inquote
|| ! macro_strip_at
@@ -970,7 +957,7 @@ macro_expand_body (sb *in, sb *out, formal_entry *formals,
}
}
else if (in->ptr[src] == '"'
- || (macro_mri && in->ptr[src] == '\''))
+ || (flag_mri && in->ptr[src] == '\''))
{
inquote = !inquote;
sb_add_char (out, in->ptr[src++]);
@@ -985,7 +972,7 @@ macro_expand_body (sb *in, sb *out, formal_entry *formals,
++src;
}
}
- else if (macro_mri
+ else if (flag_mri
&& in->ptr[src] == '='
&& src + 1 < in->len
&& in->ptr[src + 1] == '=')
@@ -1070,7 +1057,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
while (f != NULL && f->index < 0)
f = f->next;
- if (macro_mri)
+ if (flag_mri)
{
/* The macro may be called with an optional qualifier, which may
be referred to in the macro body as \0. */
@@ -1105,7 +1092,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
scan = idx;
while (scan < in->len
&& !ISSEP (in->ptr[scan])
- && !(macro_mri && in->ptr[scan] == '\'')
+ && !(flag_mri && in->ptr[scan] == '\'')
&& (!macro_alternate && in->ptr[scan] != '='))
scan++;
if (scan < in->len && !macro_alternate && in->ptr[scan] == '=')
@@ -1162,7 +1149,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
formal_entry **pf;
int c;
- if (!macro_mri)
+ if (!flag_mri)
{
err = _("too many positional arguments");
break;
@@ -1196,7 +1183,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
while (f != NULL && f->index < 0);
}
- if (! macro_mri)
+ if (! flag_mri)
idx = sb_skip_comma (idx, in);
else
{
@@ -1217,7 +1204,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
m->name);
}
- if (macro_mri)
+ if (flag_mri)
{
ptr = str_hash_find (m->formal_hash,
macro_strip_at ? "$NARG" : "NARG");
@@ -1233,7 +1220,7 @@ macro_expand (size_t idx, sb *in, macro_entry *m, sb *out)
}
/* Discard any unnamed formal arguments. */
- if (macro_mri)
+ if (flag_mri)
{
formal_entry **pf;
@@ -1271,7 +1258,7 @@ check_macro (const char *line, sb *expand,
sb line_sb;
if (! is_name_beginner (*line)
- && (! macro_mri || *line != '.'))
+ && (! flag_mri || *line != '.'))
return 0;
s = line + 1;
diff --git a/gas/macro.h b/gas/macro.h
index 7354826..6386223 100644
--- a/gas/macro.h
+++ b/gas/macro.h
@@ -83,10 +83,9 @@ extern htab_t macro_hash;
extern int buffer_and_nest (const char *, const char *, sb *,
size_t (*) (sb *));
-extern void macro_init (int, int);
+extern void macro_init (int);
extern void macro_end (void);
extern void macro_set_alternate (int);
-extern void macro_mri_mode (int);
extern macro_entry *define_macro (sb *, sb *, size_t (*) (sb *));
extern int check_macro (const char *, sb *, const char **, macro_entry **);
extern void delete_macro (const char *);
diff --git a/gas/read.c b/gas/read.c
index 0320d02..11ceafb 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -2784,7 +2784,6 @@ s_mri (int ignore ATTRIBUTE_UNUSED)
#ifdef TC_M68K
flag_m68k_mri = 1;
#endif
- macro_mri_mode (1);
}
else
{
@@ -2792,7 +2791,6 @@ s_mri (int ignore ATTRIBUTE_UNUSED)
#ifdef TC_M68K
flag_m68k_mri = 0;
#endif
- macro_mri_mode (0);
}
/* Operator precedence changes in m68k MRI mode, so we need to