This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[ping 2]: [PATCH] Fix that different function breakpoints are set at same pc address (PR gdb/12703)
- From: Yao Qi <yao at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Date: Sun, 09 Oct 2011 23:06:24 +0800
- Subject: [ping 2]: [PATCH] Fix that different function breakpoints are set at same pc address (PR gdb/12703)
- References: <000001cc3216$b96ba290$2c42e7b0$@guo@arm.com> <4E040A9A.5020807@codesourcery.com> <201106240959.08358.pedro@codesourcery.com> <4E04692F.3030500@codesourcery.com> <4E81A8FC.3070905@codesourcery.com>
On 09/27/2011 06:44 PM, Yao Qi wrote:
> http://sourceware.org/ml/gdb-patches/2011-06/msg00370.html
>
> I regression tested this patch on armv7l-unknown-linux-gnueabi with
> {-mthumb, -marm}, no new fails. OK for mainline?
>
Ping again.
>> > gdb/
>> > * arm-tdep.c (thumb_analyze_prologue): Check condition for 32-bit
>> > Thumb-2 instructions.
>> >
>> > diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
>> > index 2dd8c9e..7f5a0e1 100644
>> > --- a/gdb/arm-tdep.c
>> > +++ b/gdb/arm-tdep.c
>> > @@ -832,8 +832,9 @@ thumb_analyze_prologue (struct gdbarch *gdbarch,
>> > constant = read_memory_unsigned_integer (loc, 4, byte_order);
>> > regs[bits (insn, 8, 10)] = pv_constant (constant);
>> > }
>> > - else if ((insn & 0xe000) == 0xe000)
>> > + else if ((insn & 0xe000) == 0xe000 && (insn & 0x1800) != 0)
>> > {
>> > + /* 32-bit Thumb-2 instructions. */
>> > unsigned short inst2;
>> >
>> > inst2 = read_memory_unsigned_integer (start + 2, 2,
--
Yao (éå)