projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GDB/MI: Add new "--language LANG" command option.
[deliverable/binutils-gdb.git]
/
gas
/
app.c
diff --git
a/gas/app.c
b/gas/app.c
index 53ca22181becbda64261926a2c8cc2041c067cfd..ec3a35ee865ffdb521ab784e70e38f38d0c6cf6c 100644
(file)
--- a/
gas/app.c
+++ b/
gas/app.c
@@
-1,6
+1,6
@@
/* This is the Assembler Pre-Processor
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
/* This is the Assembler Pre-Processor
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 200
6, 2007
+ 1999, 2000, 2001, 2002, 2003, 200
5, 2006, 2007, 2008, 2009, 2010, 2012
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@@
-214,7
+214,7
@@
static char *out_string;
static char out_buf[20];
static int add_newlines;
static char *saved_input;
static char out_buf[20];
static int add_newlines;
static char *saved_input;
-static
in
t saved_input_len;
+static
size_
t saved_input_len;
static char input_buffer[32 * 1024];
static const char *mri_state;
static char mri_last_ch;
static char input_buffer[32 * 1024];
static const char *mri_state;
static char mri_last_ch;
@@
-232,7
+232,7
@@
struct app_save
char out_buf[sizeof (out_buf)];
int add_newlines;
char * saved_input;
char out_buf[sizeof (out_buf)];
int add_newlines;
char * saved_input;
-
int
saved_input_len;
+
size_t
saved_input_len;
#ifdef TC_M68K
int scrub_m68k_mri;
#endif
#ifdef TC_M68K
int scrub_m68k_mri;
#endif
@@
-258,7
+258,7
@@
app_push (void)
saved->saved_input = NULL;
else
{
saved->saved_input = NULL;
else
{
- saved->saved_input = xmalloc (saved_input_len);
+ saved->saved_input =
(char *)
xmalloc (saved_input_len);
memcpy (saved->saved_input, saved_input, saved_input_len);
saved->saved_input_len = saved_input_len;
}
memcpy (saved->saved_input, saved_input, saved_input_len);
saved->saved_input_len = saved_input_len;
}
@@
-275,6
+275,7
@@
app_push (void)
state = 0;
saved_input = NULL;
state = 0;
saved_input = NULL;
+ add_newlines = 0;
return (char *) saved;
}
return (char *) saved;
}
@@
-294,7
+295,7
@@
app_pop (char *arg)
saved_input = NULL;
else
{
saved_input = NULL;
else
{
- gas_assert (saved->saved_input_len <=
(int) (sizeof
input_buffer));
+ gas_assert (saved->saved_input_len <=
sizeof (
input_buffer));
memcpy (input_buffer, saved->saved_input, saved->saved_input_len);
saved_input = input_buffer;
saved_input_len = saved->saved_input_len;
memcpy (input_buffer, saved->saved_input, saved->saved_input_len);
saved_input = input_buffer;
saved_input_len = saved->saved_input_len;
@@
-350,14
+351,14
@@
process_escape (int ch)
machine, and saves its state so that it may return at any point.
This is the way the old code used to work. */
machine, and saves its state so that it may return at any point.
This is the way the old code used to work. */
-
in
t
-do_scrub_chars (
int (*get) (char *, int), char *tostart, in
t tolen)
+
size_
t
+do_scrub_chars (
size_t (*get) (char *, size_t), char *tostart, size_
t tolen)
{
char *to = tostart;
char *toend = tostart + tolen;
char *from;
char *fromend;
{
char *to = tostart;
char *toend = tostart + tolen;
char *from;
char *fromend;
-
in
t fromlen;
+
size_
t fromlen;
register int ch, ch2 = 0;
/* Character that started the string we're working on. */
static char quotechar;
register int ch, ch2 = 0;
/* Character that started the string we're working on. */
static char quotechar;
@@
-384,11
+385,11
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
13: After seeing a vertical bar, looking for a second
vertical bar as a parallel expression separator.
#endif
13: After seeing a vertical bar, looking for a second
vertical bar as a parallel expression separator.
#endif
-#ifdef TC_
IA64
- 14: After seeing a
`(' at state 0, looking for a `)' as
- predicate.
- 15: After seeing a
`(' at state 1, looking for a `)' as
- predicate.
+#ifdef TC_
PREDICATE_START_CHAR
+ 14: After seeing a
predicate start character at state 0, looking
+
for a predicate end character as
predicate.
+ 15: After seeing a
predicate start character at state 1, looking
+
for a predicate end character as
predicate.
#endif
#ifdef TC_Z80
16: After seeing an 'a' or an 'A' at the start of a symbol
#endif
#ifdef TC_Z80
16: After seeing an 'a' or an 'A' at the start of a symbol
@@
-547,7
+548,7
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
GET and PUT macros. */
{
char *s;
GET and PUT macros. */
{
char *s;
-
in
t len;
+
ptrdiff_
t len;
for (s = from; s < fromend; s++)
{
for (s = from; s < fromend; s++)
{
@@
-667,13
+668,23
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
line from just after the first white space. */
state = 1;
PUT ('|');
line from just after the first white space. */
state = 1;
PUT ('|');
+#ifdef TC_TIC6X
+ /* "||^" is used for SPMASKed instructions. */
+ ch = GET ();
+ if (ch == EOF)
+ goto fromeof;
+ else if (ch == '^')
+ PUT ('^');
+ else
+ UNGET (ch);
+#endif
continue;
#endif
#ifdef TC_Z80
case 16:
/* We have seen an 'a' at the start of a symbol, look for an 'f'. */
ch = GET ();
continue;
#endif
#ifdef TC_Z80
case 16:
/* We have seen an 'a' at the start of a symbol, look for an 'f'. */
ch = GET ();
- if (ch == 'f' || ch == 'F')
+ if (ch == 'f' || ch == 'F')
{
state = 17;
PUT (ch);
{
state = 17;
PUT (ch);
@@
-702,8
+713,8
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
/* flushchar: */
ch = GET ();
/* flushchar: */
ch = GET ();
-#ifdef TC_
IA64
- if (ch ==
'('
&& (state == 0 || state == 1))
+#ifdef TC_
PREDICATE_START_CHAR
+ if (ch ==
TC_PREDICATE_START_CHAR
&& (state == 0 || state == 1))
{
state += 14;
PUT (ch);
{
state += 14;
PUT (ch);
@@
-711,7
+722,7
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
}
else if (state == 14 || state == 15)
{
}
else if (state == 14 || state == 15)
{
- if (ch ==
')'
)
+ if (ch ==
TC_PREDICATE_END_CHAR
)
{
state -= 14;
PUT (ch);
{
state -= 14;
PUT (ch);
@@
-905,7
+916,11
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
PUT (' ');
break;
case 3:
PUT (' ');
break;
case 3:
+#ifndef TC_KEEP_OPERAND_SPACES
+ /* For TI C6X, we keep these spaces as they may separate
+ functional unit specifiers from operands. */
if (scrub_m68k_mri)
if (scrub_m68k_mri)
+#endif
{
/* In MRI mode, we keep these spaces. */
UNGET (ch);
{
/* In MRI mode, we keep these spaces. */
UNGET (ch);
@@
-915,7
+930,9
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
goto recycle; /* Sp in operands */
case 9:
case 10:
goto recycle; /* Sp in operands */
case 9:
case 10:
+#ifndef TC_KEEP_OPERAND_SPACES
if (scrub_m68k_mri)
if (scrub_m68k_mri)
+#endif
{
/* In MRI mode, we keep these spaces. */
state = 3;
{
/* In MRI mode, we keep these spaces. */
state = 3;
@@
-1313,12
+1330,12
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
#ifdef TC_Z80
/* "af'" is a symbol containing '\''. */
#ifdef TC_Z80
/* "af'" is a symbol containing '\''. */
- if (state == 3 && (ch == 'a' || ch == 'A'))
+ if (state == 3 && (ch == 'a' || ch == 'A'))
{
state = 16;
PUT (ch);
ch = GET ();
{
state = 16;
PUT (ch);
ch = GET ();
- if (ch == 'f' || ch == 'F')
+ if (ch == 'f' || ch == 'F')
{
state = 17;
PUT (ch);
{
state = 17;
PUT (ch);
@@
-1327,7
+1344,7
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
else
{
state = 9;
else
{
state = 9;
- if (
!IS_SYMBOL_COMPONENT (ch))
+ if (
ch == EOF || !IS_SYMBOL_COMPONENT (ch))
{
if (ch != EOF)
UNGET (ch);
{
if (ch != EOF)
UNGET (ch);
@@
-1349,7
+1366,7
@@
do_scrub_chars (int (*get) (char *, int), char *tostart, int tolen)
)
{
char *s;
)
{
char *s;
-
in
t len;
+
ptrdiff_
t len;
for (s = from; s < fromend; s++)
{
for (s = from; s < fromend; s++)
{
This page took
0.026233 seconds
and
4
git commands to generate.