diff options
author | Christian Biesinger <cbiesinger@google.com> | 2019-10-15 10:02:33 -0500 |
---|---|---|
committer | Christian Biesinger <cbiesinger@google.com> | 2019-10-16 16:13:43 -0500 |
commit | 17bfe554b9a8c57c4d377bce930046138298fd8b (patch) | |
tree | 07bfdba2d06de217e3774ce60dabd8d22e38e675 /gdb/i386-gnu-tdep.c | |
parent | 950b74950f6020eda38647f22e9077ac7f68ca49 (diff) | |
download | gdb-17bfe554b9a8c57c4d377bce930046138298fd8b.zip gdb-17bfe554b9a8c57c4d377bce930046138298fd8b.tar.gz gdb-17bfe554b9a8c57c4d377bce930046138298fd8b.tar.bz2 |
Allow not saving the signal state in SIGSETJMP
Saving the signal state is very slow (this patch is a 14% speedup). The
reason we need this code is because signal handler will leave the
signal blocked when we longjmp out of it. But in this case we can
just manually unblock the signal instead of taking the unconditional
perf hit.
gdb/ChangeLog:
2019-10-16 Christian Biesinger <cbiesinger@google.com>
* gdbsupport/gdb_setjmp.h (SIGSETJMP): Allow passing in the value to
pass on to sigsetjmp's second argument.
* cp-support.c (gdb_demangle): Unblock SIGSEGV if we caught a crash.
Change-Id: Ib3010966050c64b4cc8b47d8cb45871652b0b3ea
Diffstat (limited to 'gdb/i386-gnu-tdep.c')
0 files changed, 0 insertions, 0 deletions