Page 1 of 1

[devkitARM] Objdump's disassembler is broken!

Posted: Tue May 12, 2009 3:40 am
by Dwedit
I'm trying to use objdump to disassemble an ARM binary file.
For some reason, the disassembler does some nasty stuff like this:

Code: Select all

 30028a0:	e1a03c45 	asr	r3, r5, #24
 30028a4:	e2588c09 	subs	r8, r8, #2304	; 0x900
 30028a8:	0001      	lsls	r1, r0, #0
 30028aa:	f10054d9 	undefined instruction 0xf10054d9
It's marking part of a 32-bit instruction as a 16-bit instruction, and that's throwing off the disassembly into unaligned territory. How do I stop objdump from doing that?

The OLD version of objdump (GNU objdump 2.17 from 2005) works fine.
The version I was using (GNU objdump (GNU Binutils) 2.19.1) included with the new devkitpro is broken.