Build raise with -fasynchronous-unwind-tables.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 24 Jan 2020 17:23:47 +0000 (17:23 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 24 Jan 2020 17:23:47 +0000 (17:23 +0000)
In testing glibc for Arm and MIPS, I see:

FAIL: misc/tst-sigcontext-get_pc

If this test - backtracing through a call to raise - is valid, then
raise needs to be built with -fasynchronous-unwind-tables (as the test
itself is) to have the required unwind information for that
backtracing to work.  Adding that option, which this patch does,
causes the test for pass for Arm.  For MIPS, the test still does not
pass (the backtrace has an address that is 2 bytes after the "address
in signal handler", for unknown reasons), although the patch allows a
longer backtrace to be produced.

signal/Makefile

index 7da67de..37de438 100644 (file)
@@ -52,6 +52,7 @@ tests         := tst-signal tst-sigset tst-sigsimple tst-raise tst-sigset2 \
 
 include ../Rules
 
+CFLAGS-raise.c += -fasynchronous-unwind-tables
 CFLAGS-sigpause.c += -fexceptions
 CFLAGS-sigsuspend.c += -fexceptions -fasynchronous-unwind-tables
 CFLAGS-sigtimedwait.c += -fexceptions -fasynchronous-unwind-tables