This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gdb/289: [arm] disassemble thumb instructions



>Number:         289
>Category:       gdb
>Synopsis:       [arm] disassemble thumb instructions
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jan 23 05:48:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     avbidder@acter.ch
>Release:        unknown-1.0
>Organization:
>Environment:
arm-linux-elf targetted gdb 5.1 (unmodified from tar) on linux 
x86 host system.
>Description:
to force the disassembler into thumb mode, I give the address
with the lsb set. for example:

(gdb) x/i $pc+1
3: x/i $pc + 1 0xf55: push	{r4, r5, r7, lr}

would output the current thumb instruction, even when no symbol information is given. The same kludge does not work when used with display:

(gdb) disp/i $pc+1
4: x/i $pc + 1  0xf54:	undefined

although the x/i does show the thumb instruction (which together with the next one is an undefined arm instruction).

(Odd, too, that the x/i would decode the instruction at 0xf54, but display the address as 0xf55 - that's a bug, too, albeit a minor one.)

See also discussion on gdb@sources.redhat starting from
my mail: http://sources.redhat.com/ml/gdb/2002-01/msg00255.html
>How-To-Repeat:
see description
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]