Re: [PATCH] Fix problems with finishing a dummy function call on simulators.

Pedro Alves
2015-07-06T15:06:59Z

Hi Luis,

Looks like this regressed gdbserver somehow.

On 06/17/2015 09:16 PM, Luis Machado wrote:
> On 06/17/2015 10:43 AM, Pedro Alves wrote:
>> On 06/17/2015 02:26 PM, Luis Machado wrote:
>>> On 06/17/2015 09:40 AM, Pedro Alves wrote:
>>
>>>> Yep. Close, but also remove the bp_call_dummy check in
>>>> bp_loc_is_permanent, and merge in its comment, like ...
>>>>
>>>
>>> Fixed now.
>>
>> Looks good now. Thanks.
>>
>>> The attached updated patch also removes this dead function. I can commit
>>> it as a separate patch if you're not removing it yourself.
>>
>> Nah, I was hoping you'd remove it. :-) Please also remove the
>> make_breakpoint_permanent declaration from breakpoint.h though.
>
> Thanks. I've pushed this in now and pushed the removal with a different
> patch.
>

Compared to before the patch, I see these:

-PASS: gdb.base/shlib-call.exp: print mainshr1(1)
-PASS: gdb.base/shlib-call.exp: step into mainshr1
+FAIL: gdb.base/shlib-call.exp: print mainshr1(1)
+FAIL: gdb.base/shlib-call.exp: step into mainshr1
PASS: gdb.base/shlib-call.exp: set print sevenbit-strings
PASS: gdb.cp/chained-calls.exp: g(f())
-PASS: gdb.cp/chained-calls.exp: q(p())
+FAIL: gdb.cp/chained-calls.exp: q(p())
PASS: gdb.cp/chained-calls.exp: p() + r()
-PASS: gdb.cp/chained-calls.exp: q(p() + r())
+FAIL: gdb.cp/chained-calls.exp: q(p() + r())
PASS: gdb.cp/chained-calls.exp: g(f() + f())
-PASS: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f())
+FAIL: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f())
PASS: gdb.cp/chained-calls.exp: getb(makeb(), ...)
-PASS: gdb.cp/chained-calls.exp: *c
-PASS: gdb.cp/chained-calls.exp: *c + *c
-PASS: gdb.cp/chained-calls.exp: q(*c + *c)
+FAIL: gdb.cp/chained-calls.exp: *c
+FAIL: gdb.cp/chained-calls.exp: *c + *c
+FAIL: gdb.cp/chained-calls.exp: q(*c + *c)

PASS: gdb.cp/classes.exp: print cnsi with static members
PASS: gdb.cp/classes.exp: finish from marker_reg1
-PASS: gdb.cp/classes.exp: calling method for small class
+FAIL: gdb.cp/classes.exp: calling method for small class

git bisect pointed to this commit:

6ae8866180bf90e9ec76c2dd34c07fd826d11a83 is the first bad commit
commit 6ae8866180bf90e9ec76c2dd34c07fd826d11a83
Author: Luis Machado <lgustavo@codesourcery.com>
Date: Wed Jun 17 16:50:57 2015 -0300

Fix problems with finishing a dummy function call on simulators.

I don't have an offhand explanation for the regressions.

This is just:

make check RUNTESTFLAGS="--target_board=native-gdbserver"

on x86_64 Fedora 20.

Thanks,
Pedro Alves