Re: [PATCH] Fix that different function breakpoints are set at same pc address (PR gdb/12703)

Yao Qi
2011-06-29T10:00:39Z

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?