Add support for unindexed form of Addressing Mode 5

This commit is contained in:
Nick Clifton
2003-08-19 13:05:42 +00:00
parent 062103babe
commit f02232aaa3
8 changed files with 171 additions and 17 deletions

View File

@ -1,3 +1,8 @@
2003-08-19 Nick Clifton <nickc@redhat.com>
* arm-dis.c (print_insn_arm: case 'A'): Add code to
disassemble unindexed form of Addressing Mode 5.
2003-08-19 Alan Modra <amodra@bigpond.net.au>
* ppc-opc.c (PPC440): Define.

View File

@ -445,9 +445,11 @@ print_insn_arm (pc, info, given)
case 'A':
func (stream, "[%s", arm_regnames [(given >> 16) & 0xf]);
if ((given & 0x01000000) != 0)
if ((given & (1 << 24)) != 0)
{
int offset = given & 0xff;
if (offset)
func (stream, ", %s#%d]%s",
((given & 0x00800000) == 0 ? "-" : ""),
@ -459,12 +461,18 @@ print_insn_arm (pc, info, given)
else
{
int offset = given & 0xff;
if (offset)
func (stream, "], %s#%d",
((given & 0x00800000) == 0 ? "-" : ""),
offset * 4);
func (stream, "]");
if (given & (1 << 21))
{
if (offset)
func (stream, ", %s#%d",
((given & 0x00800000) == 0 ? "-" : ""),
offset * 4);
}
else
func (stream, "]");
func (stream, ", {%d}", offset);
}
break;