* config/tc-d10v.c (do_assemble): Correctly detect overflow of
"name" buffer. * config/tc-m68hc11.c (md_assemble): Likewise. * config/tc-microblaze.c (md_assemble): Likewise. Correct cast of is_end_of_line index.
This commit is contained in:
parent
ca09d69af1
commit
4ad7ac30ca
4 changed files with 18 additions and 4 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
2010-08-25 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
* config/tc-d10v.c (do_assemble): Correctly detect overflow of
|
||||||
|
"name" buffer.
|
||||||
|
* config/tc-m68hc11.c (md_assemble): Likewise.
|
||||||
|
* config/tc-microblaze.c (md_assemble): Likewise. Correct cast
|
||||||
|
of is_end_of_line index.
|
||||||
|
|
||||||
2010-08-25 Jie Zhang <jie@codesourcery.com>
|
2010-08-25 Jie Zhang <jie@codesourcery.com>
|
||||||
|
|
||||||
* config/tc-arm.c (encode_arm_addr_mode_2): Fix comment.
|
* config/tc-arm.c (encode_arm_addr_mode_2): Fix comment.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* tc-d10v.c -- Assembler code for the Mitsubishi D10V
|
/* tc-d10v.c -- Assembler code for the Mitsubishi D10V
|
||||||
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006,
|
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006,
|
||||||
2007, 2009
|
2007, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GAS, the GNU Assembler.
|
This file is part of GAS, the GNU Assembler.
|
||||||
|
@ -1420,11 +1420,13 @@ do_assemble (char *str, struct d10v_opcode **opcode)
|
||||||
|
|
||||||
/* Find the opcode end. */
|
/* Find the opcode end. */
|
||||||
for (op_start = op_end = (unsigned char *) str;
|
for (op_start = op_end = (unsigned char *) str;
|
||||||
*op_end && nlen < 20 && !is_end_of_line[*op_end] && *op_end != ' ';
|
*op_end && !is_end_of_line[*op_end] && *op_end != ' ';
|
||||||
op_end++)
|
op_end++)
|
||||||
{
|
{
|
||||||
name[nlen] = TOLOWER (op_start[nlen]);
|
name[nlen] = TOLOWER (op_start[nlen]);
|
||||||
nlen++;
|
nlen++;
|
||||||
|
if (nlen == sizeof (name) - 1)
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
name[nlen] = 0;
|
name[nlen] = 0;
|
||||||
|
|
||||||
|
|
|
@ -2403,11 +2403,13 @@ md_assemble (char *str)
|
||||||
/* Find the opcode end and get the opcode in 'name'. The opcode is forced
|
/* Find the opcode end and get the opcode in 'name'. The opcode is forced
|
||||||
lower case (the opcode table only has lower case op-codes). */
|
lower case (the opcode table only has lower case op-codes). */
|
||||||
for (op_start = op_end = (unsigned char *) str;
|
for (op_start = op_end = (unsigned char *) str;
|
||||||
*op_end && nlen < 20 && !is_end_of_line[*op_end] && *op_end != ' ';
|
*op_end && !is_end_of_line[*op_end] && *op_end != ' ';
|
||||||
op_end++)
|
op_end++)
|
||||||
{
|
{
|
||||||
name[nlen] = TOLOWER (op_start[nlen]);
|
name[nlen] = TOLOWER (op_start[nlen]);
|
||||||
nlen++;
|
nlen++;
|
||||||
|
if (nlen == sizeof (name) - 1)
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
name[nlen] = 0;
|
name[nlen] = 0;
|
||||||
|
|
||||||
|
|
|
@ -807,11 +807,13 @@ md_assemble (char * str)
|
||||||
|
|
||||||
/* Find the op code end. */
|
/* Find the op code end. */
|
||||||
for (op_start = op_end = str;
|
for (op_start = op_end = str;
|
||||||
* op_end && nlen < 20 && !is_end_of_line [(int)*op_end] && *op_end != ' ';
|
*op_end && !is_end_of_line[(unsigned char) *op_end] && *op_end != ' ';
|
||||||
op_end++)
|
op_end++)
|
||||||
{
|
{
|
||||||
name[nlen] = op_start[nlen];
|
name[nlen] = op_start[nlen];
|
||||||
nlen++;
|
nlen++;
|
||||||
|
if (nlen == sizeof (name) - 1)
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
name [nlen] = 0;
|
name [nlen] = 0;
|
||||||
|
|
Loading…
Reference in a new issue