mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-28 07:08:01 +08:00
The ARM assembler is not assembling the following instruction
correctly. mrs lr, spsr The string pointer is advanced to far before the check to set the SPSR bit. Thu Jun 01 2000 Scott Bambrough <scottb@netwinder.org> * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
This commit is contained in:
@ -1,3 +1,7 @@
|
|||||||
|
2000-06-01 Scott Bambrough <scottb@netwinder.org>
|
||||||
|
|
||||||
|
* config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
|
||||||
|
|
||||||
2000-05-29 Nick Clifton <nickc@cygnus.com>
|
2000-05-29 Nick Clifton <nickc@cygnus.com>
|
||||||
|
|
||||||
* config/tc-sh.c: Fix compile time warning messages.
|
* config/tc-sh.c: Fix compile time warning messages.
|
||||||
|
@ -1914,6 +1914,8 @@ do_mrs (str, flags)
|
|||||||
char *str;
|
char *str;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
{
|
{
|
||||||
|
int skip = 0;
|
||||||
|
|
||||||
/* Only one syntax. */
|
/* Only one syntax. */
|
||||||
skip_whitespace (str);
|
skip_whitespace (str);
|
||||||
|
|
||||||
@ -1936,11 +1938,11 @@ do_mrs (str, flags)
|
|||||||
/* Lower case versions for backwards compatability. */
|
/* Lower case versions for backwards compatability. */
|
||||||
|| strcmp (str, "cpsr") == 0
|
|| strcmp (str, "cpsr") == 0
|
||||||
|| strcmp (str, "spsr") == 0)
|
|| strcmp (str, "spsr") == 0)
|
||||||
str += 4;
|
skip = 4;
|
||||||
/* This is for backwards compatability with older toolchains. */
|
/* This is for backwards compatability with older toolchains. */
|
||||||
else if (strcmp (str, "cpsr_all") == 0
|
else if (strcmp (str, "cpsr_all") == 0
|
||||||
|| strcmp (str, "spsr_all") == 0)
|
|| strcmp (str, "spsr_all") == 0)
|
||||||
str += 7;
|
skip = 7;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
inst.error = _("{C|S}PSR expected");
|
inst.error = _("{C|S}PSR expected");
|
||||||
@ -1949,6 +1951,7 @@ do_mrs (str, flags)
|
|||||||
|
|
||||||
if (* str == 's' || * str == 'S')
|
if (* str == 's' || * str == 'S')
|
||||||
inst.instruction |= SPSR_BIT;
|
inst.instruction |= SPSR_BIT;
|
||||||
|
str += skip;
|
||||||
|
|
||||||
inst.instruction |= flags;
|
inst.instruction |= flags;
|
||||||
end_of_line (str);
|
end_of_line (str);
|
||||||
|
Reference in New Issue
Block a user