Build raise with -fasynchronous-unwind-tables
Joseph Myers
joseph@codesourcery.com
Fri Jan 24 02:38:00 GMT 2020
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.
diff --git a/signal/Makefile b/signal/Makefile
index 7da67def84..37de438bba 100644
--- a/signal/Makefile
+++ b/signal/Makefile
@@ -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
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list