This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Fix that different function breakpoints are set at same pc address (PR gdb/12703)
- From: Yao Qi <yao at codesourcery dot com>
- To: Terry Guo <Terry dot Guo at arm dot com>
- Cc: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>, "pedro at codesourcery dot com" <pedro at codesourcery dot com>
- Date: Wed, 29 Jun 2011 18:00:06 +0800
- Subject: Re: [PATCH] Fix that different function breakpoints are set at same pc address (PR gdb/12703)
- References: <000901cc34bc$fd1aa6a0$f74ff3e0$@guo@arm.com> <000101cc35fb$8d45ff60$a7d1fe20$@guo@arm.com> <4E0AB9B3.8060104@codesourcery.com> <000501cc362a$2e7f9020$8b7eb060$@guo@arm.com> <4E0ADB87.20807@codesourcery.com> <45520D6299C11E4588128526465332BB0D0C8B1246@SAROVARA.Asiapac.Arm.com>
On 06/29/2011 04:47 PM, Terry Guo wrote:
> Hi,
>
> First if you look at the generated binary code, I thought it is a valid case. After performing the function test, it will fall into function bar which is a normal function. At least my case can run correctly on QEMU. It is very likely for people to write program in assembly code like:
>
> main:
> b test
>
> test:
> movs r5, #10
> bar:
> push.......
> .........
>
We are lucky here GCC places bar next to function test physically, but
gcc may also place function test and bar in other layout, like
main:
b test
bar:
push ...
test:
moves r5, #10
After test, processor will run some instructions that we don't know.
IMO, it is incorrect.
> You cannot say this is a invalid program. If you have concern about attribute NAKED, I can rewrite it in assembly code.
>
I have no concern on attribute NAKED here.
> Second, we all know that current prologue analyzer cannot handle all cases. My patch only intends to be a worthwhile supplement for cases that beyond the prologue analyzer capability.
>
> Third, I also have strong interesting to enhance prologue analyze. I suggest we use another thread to discuss how to enhance prologue analyzer to handle all possible cases. And leave this one to discuss whether is it worthwhile to have my patch.
OK, thanks for your clarification. If you think your test case is
correct, please send the patch again, and the right people can
review/approve your patch.
--
Yao (éå)
P.S. 1. could you please set up your mail client to newline your mail
automatically? It is hard to read one paragraph in one line. 2. could
you reply mail with quoted context?