Hi,

On 6 April 2016 at 17:29, Yvan Roux <yvan.r...@linaro.org> wrote:
> On 6 April 2016 at 17:24, Pedro Alves <pal...@redhat.com> wrote:
>> On 04/06/2016 04:13 PM, Yvan Roux wrote:
>>> On 6 April 2016 at 17:09, Pedro Alves <pal...@redhat.com> wrote:
>>>> On 04/06/2016 03:53 PM, Yvan Roux wrote:
>>>>> Dejagnu cleanup mechanism needs to be enhanced, but I think that it
>>>>> would also be better if guality tests don't get stuck and/or can be
>>>>> killed easily.  This patch changes GDB signals handling to nostop for
>>>>> SIGSEGV, SIGINT, SIGTERM and SIGBUS.  I am not sure if we need to
>>>>> increase the list of signals to all the stop ones (which are not used
>>>>> by GDB) or to restrict it just to SIGSEGV.
>>>>
>>>> I'd suggest:
>>>>
>>>>  handle all pass nostop
>>>>  handle SIGINT pass nostop
>>>>
>>>> That would make gdb pass _all_ signals except SIGTRAP
>>>
>>> I've committed it already :/
>>>
>>> I can make the change, but isn't there cases where SIGILL is used for
>>> breakpoints in GDB (I think I've seen that somewhere).
>>
>> True, and SIGSEGV and SIGEMT too.  But GDB handles that transparently
>> and won't pass such a breakpoint signal to the program, even with
>> "handle pass".  Only "handle SIGTRAP pass" passes a
>> breakpoint/step/etc. trap to the program.
>
> Ah ok, thanks for the explanations Pedro, I'll prepare a new patch and
> validate it.

Here is the new patch which makes GDB pass all signals except SIGTRAP.
validated on native armv8l target without regessions. ok for trunk ?

Cheers,
Yvan

2016-04-07  Yvan Roux  <yvan.r...@linaro.org>
            Pedro Alves  <pal...@redhat.com>

        * gcc.dg/guality/guality.h (main): Make GDB pass all signals except
        SIGTRAP.
diff --git a/gcc/testsuite/gcc.dg/guality/guality.h 
b/gcc/testsuite/gcc.dg/guality/guality.h
index d5867d8..acf977f 100644
--- a/gcc/testsuite/gcc.dg/guality/guality.h
+++ b/gcc/testsuite/gcc.dg/guality/guality.h
@@ -252,10 +252,8 @@ main (int argc, char *argv[])
       if (!guality_gdb_input
          || fprintf (guality_gdb_input, "\
 set height 0\n\
+handle all pass nostop\n\
 handle SIGINT pass nostop\n\
-handle SIGTERM pass nostop\n\
-handle SIGSEGV pass nostop\n\
-handle SIGBUS pass nostop\n\
 attach %i\n\
 set guality_attached = 1\n\
 b %i\n\

Reply via email to