| |||
| Home > RealView Debugger Commands > Alphabetical command reference > DISASSEMBLE | |||
Displays memory addresses and corresponding assembly code on the Disassembly tab of the Code window.
[{/D|/S|/A|/B|/E}] [{DISASSEMBLEaddress |
@stack_level}]
where:
/DAttempt to auto-detect the disassembly mode.
For ARM architecture processors, select from ARM, Thumb®, Jazelle® bytecodes, or Thumb-2 Execution Environment (Thumb-2EE) using information from the image file where available.
/SDisassemble using the standard instruction disassembly mode.
For ARM architecture processors, select ARM state (32-bit) instructions.
/ADisassemble using the alternate instruction disassembly mode.
For ARM architecture processors, select Thumb state (16-bit) instructions.
/BDisassemble using Jazelle bytecode assembly instructions. This is available only for ARM processors.
/EDisassemble using Thumb-2EE assembly instructions. This is available only for ARM processors.
addressSpecifies the starting address for disassembly. This can be a literal address or a debugger expression.
stack_levelEnables you to specify the starting point without knowing its address. Stack level 0 is the current address in the current procedure, stack level 1 is the code address from which the current procedure was called.
The DISASSEMBLE command displays memory addresses in hexadecimal and assembly code on the Disassembly tab of the Code window, starting at the specified memory location and using the assembler mnemonics and register names associated with the processor type of this connection.
Where multiple assembler mnemonics exist for the same processor type (for example, with the ARM and the GNU assemblers for ARM processors) the debugger can only use one of them. There is no way to select the alternate form.
Different target connections can be connected to different processor types and so have differing register names and assembler mnemonics.
If the specified address falls in the middle of an instruction, the whole instruction is displayed. Memory is displayed starting at the address held in the PC if you do not supply an address. The current execution context and variable scope of the program remains unchanged even if you select an alternate stack level.
If you issue the OPTION command with the LINES=ON option,
source code is intermixed with the assembly language code. If you
issue the OPTION command with the SYMBOLS=ON option,
symbol references are displayed with the assembly language symbols
and labels.
The DISASSEMBLE command runs synchronously unless background access to target memory is supported. Use the WAIT command to force it to run synchronously.
The following examples show how to use DISASSEMBLE:
DISASSEMBLE
/S @1Disassemble, using the standard instruction format (for ARM processors, the ARM state format), the instructions that are executed when the current function returns, displaying the result in the Disassembly tab of the Code window.
DISASSEMBLE
0x80200Disassemble, using
an instruction format selected using symbol table information, the
instructions starting at address 0x80200, displaying
the result in the Disassembly tab of the
Code window.