Hi Tom! On Fri, 8 Feb 2019 10:42:24 +0100, Tom de Vries <tdevr...@suse.de> wrote: > Add libbacktrace test-case using -flto.
I'm seeing this one fail is some configurations, but only in the 'build-gcc/libbacktrace/btest_lto.log' variant: test5: unexpected syminfo name got global.2537 expected global PASS: backtrace_full noinline PASS: backtrace_full inline PASS: backtrace_simple noinline PASS: backtrace_simple inline FAIL: backtrace_syminfo variable FAIL btest_lto (exit status: 1) I haven't looked yet which details about these GCC build configurations might be different/important; maybe you've got an idea already? Grüße Thomas > [libbacktrace] Add btest_lto > > 2019-02-08 Tom de Vries <tdevr...@suse.de> > > * Makefile.am (BUILDTESTS): Add btest_lto. > * Makefile.in: Regenerate. > * btest.c (test1, f2, f3, test3, f22, f23): Declare with > __attribute__((noclone)). > > --- > libbacktrace/Makefile.am | 6 ++++++ > libbacktrace/Makefile.in | 47 ++++++++++++++++++++++++++++++++++++++++------- > libbacktrace/btest.c | 12 ++++++------ > 3 files changed, 52 insertions(+), 13 deletions(-) > > diff --git a/libbacktrace/Makefile.am b/libbacktrace/Makefile.am > index 71a2ed478cc..46d7de48fd1 100644 > --- a/libbacktrace/Makefile.am > +++ b/libbacktrace/Makefile.am > @@ -222,6 +222,12 @@ btest_LDADD = libbacktrace.la > > BUILDTESTS += btest > > +btest_lto_SOURCES = btest.c testlib.c > +btest_lto_CFLAGS = $(AM_CFLAGS) -g -O -flto > +btest_lto_LDADD = libbacktrace.la > + > +BUILDTESTS += btest_lto > + > btest_alloc_SOURCES = $(btest_SOURCES) > btest_alloc_CFLAGS = $(btest_CFLAGS) > btest_alloc_LDADD = libbacktrace_alloc.la > diff --git a/libbacktrace/Makefile.in b/libbacktrace/Makefile.in > index a2b595e9bb0..c65c40d95d8 100644 > --- a/libbacktrace/Makefile.in > +++ b/libbacktrace/Makefile.in > @@ -126,8 +126,8 @@ TESTS = $(am__append_4) $(am__append_6) $(am__append_7) \ > @HAVE_ELF_TRUE@@HAVE_OBJCOPY_DEBUGLINK_TRUE@@NATIVE_TRUE@am__append_1 = > libbacktrace_elf_for_test.la > @NATIVE_TRUE@am__append_2 = test_elf test_xcoff_32 test_xcoff_64 \ > @NATIVE_TRUE@ test_pecoff test_unknown unittest unittest_alloc \ > -@NATIVE_TRUE@ btest btest_alloc stest stest_alloc ztest \ > -@NATIVE_TRUE@ ztest_alloc edtest edtest_alloc > +@NATIVE_TRUE@ btest btest_lto btest_alloc stest stest_alloc \ > +@NATIVE_TRUE@ ztest ztest_alloc edtest edtest_alloc > @NATIVE_TRUE@am__append_3 = allocfail > @NATIVE_TRUE@am__append_4 = allocfail.sh > @HAVE_ELF_TRUE@@HAVE_OBJCOPY_DEBUGLINK_TRUE@@NATIVE_TRUE@am__append_5 = > b2test \ > @@ -205,10 +205,10 @@ libbacktrace_noformat_la_OBJECTS = \ > @NATIVE_TRUE@ test_xcoff_64$(EXEEXT) test_pecoff$(EXEEXT) \ > @NATIVE_TRUE@ test_unknown$(EXEEXT) unittest$(EXEEXT) \ > @NATIVE_TRUE@ unittest_alloc$(EXEEXT) btest$(EXEEXT) \ > -@NATIVE_TRUE@ btest_alloc$(EXEEXT) stest$(EXEEXT) \ > -@NATIVE_TRUE@ stest_alloc$(EXEEXT) ztest$(EXEEXT) \ > -@NATIVE_TRUE@ ztest_alloc$(EXEEXT) edtest$(EXEEXT) \ > -@NATIVE_TRUE@ edtest_alloc$(EXEEXT) > +@NATIVE_TRUE@ btest_lto$(EXEEXT) btest_alloc$(EXEEXT) \ > +@NATIVE_TRUE@ stest$(EXEEXT) stest_alloc$(EXEEXT) \ > +@NATIVE_TRUE@ ztest$(EXEEXT) ztest_alloc$(EXEEXT) \ > +@NATIVE_TRUE@ edtest$(EXEEXT) edtest_alloc$(EXEEXT) > @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@am__EXEEXT_4 = ttest$(EXEEXT) \ > @HAVE_PTHREAD_TRUE@@NATIVE_TRUE@ ttest_alloc$(EXEEXT) > @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am__EXEEXT_5 = \ > @@ -253,6 +253,13 @@ btest_alloc_OBJECTS = $(am_btest_alloc_OBJECTS) > btest_alloc_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ > $(LIBTOOLFLAGS) --mode=link $(CCLD) $(btest_alloc_CFLAGS) \ > $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ > +@NATIVE_TRUE@am_btest_lto_OBJECTS = btest_lto-btest.$(OBJEXT) \ > +@NATIVE_TRUE@ btest_lto-testlib.$(OBJEXT) > +btest_lto_OBJECTS = $(am_btest_lto_OBJECTS) > +@NATIVE_TRUE@btest_lto_DEPENDENCIES = libbacktrace.la > +btest_lto_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ > + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(btest_lto_CFLAGS) \ > + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ > @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@am_ctesta_OBJECTS = > ctesta-btest.$(OBJEXT) \ > @HAVE_COMPRESSED_DEBUG_TRUE@@NATIVE_TRUE@ ctesta-testlib.$(OBJEXT) > ctesta_OBJECTS = $(am_ctesta_OBJECTS) > @@ -410,7 +417,7 @@ SOURCES = $(libbacktrace_la_SOURCES) > $(EXTRA_libbacktrace_la_SOURCES) \ > $(libbacktrace_instrumented_alloc_la_SOURCES) \ > $(libbacktrace_noformat_la_SOURCES) $(allocfail_SOURCES) \ > $(b2test_SOURCES) $(b3test_SOURCES) $(btest_SOURCES) \ > - $(btest_alloc_SOURCES) $(ctesta_SOURCES) \ > + $(btest_alloc_SOURCES) $(btest_lto_SOURCES) $(ctesta_SOURCES) \ > $(ctesta_alloc_SOURCES) $(ctestg_SOURCES) \ > $(ctestg_alloc_SOURCES) $(edtest_SOURCES) \ > $(edtest_alloc_SOURCES) $(stest_SOURCES) \ > @@ -880,6 +887,9 @@ BUILDTESTS = $(am__append_2) $(am__append_11) > $(am__append_13) > @NATIVE_TRUE@btest_SOURCES = btest.c testlib.c > @NATIVE_TRUE@btest_CFLAGS = $(AM_CFLAGS) -g -O > @NATIVE_TRUE@btest_LDADD = libbacktrace.la > +@NATIVE_TRUE@btest_lto_SOURCES = btest.c testlib.c > +@NATIVE_TRUE@btest_lto_CFLAGS = $(AM_CFLAGS) -g -O -flto > +@NATIVE_TRUE@btest_lto_LDADD = libbacktrace.la > @NATIVE_TRUE@btest_alloc_SOURCES = $(btest_SOURCES) > @NATIVE_TRUE@btest_alloc_CFLAGS = $(btest_CFLAGS) > @NATIVE_TRUE@btest_alloc_LDADD = libbacktrace_alloc.la > @@ -1065,6 +1075,10 @@ btest_alloc$(EXEEXT): $(btest_alloc_OBJECTS) > $(btest_alloc_DEPENDENCIES) $(EXTRA > @rm -f btest_alloc$(EXEEXT) > $(AM_V_CCLD)$(btest_alloc_LINK) $(btest_alloc_OBJECTS) > $(btest_alloc_LDADD) $(LIBS) > > +btest_lto$(EXEEXT): $(btest_lto_OBJECTS) $(btest_lto_DEPENDENCIES) > $(EXTRA_btest_lto_DEPENDENCIES) > + @rm -f btest_lto$(EXEEXT) > + $(AM_V_CCLD)$(btest_lto_LINK) $(btest_lto_OBJECTS) $(btest_lto_LDADD) > $(LIBS) > + > ctesta$(EXEEXT): $(ctesta_OBJECTS) $(ctesta_DEPENDENCIES) > $(EXTRA_ctesta_DEPENDENCIES) > @rm -f ctesta$(EXEEXT) > $(AM_V_CCLD)$(ctesta_LINK) $(ctesta_OBJECTS) $(ctesta_LDADD) $(LIBS) > @@ -1204,6 +1218,18 @@ btest_alloc-testlib.o: testlib.c > btest_alloc-testlib.obj: testlib.c > $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(btest_alloc_CFLAGS) $(CFLAGS) -c -o btest_alloc-testlib.obj `if > test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) > '$(srcdir)/testlib.c'; fi` > > +btest_lto-btest.o: btest.c > + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(btest_lto_CFLAGS) $(CFLAGS) -c -o btest_lto-btest.o `test -f > 'btest.c' || echo '$(srcdir)/'`btest.c > + > +btest_lto-btest.obj: btest.c > + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(btest_lto_CFLAGS) $(CFLAGS) -c -o btest_lto-btest.obj `if test > -f 'btest.c'; then $(CYGPATH_W) 'btest.c'; else $(CYGPATH_W) > '$(srcdir)/btest.c'; fi` > + > +btest_lto-testlib.o: testlib.c > + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(btest_lto_CFLAGS) $(CFLAGS) -c -o btest_lto-testlib.o `test -f > 'testlib.c' || echo '$(srcdir)/'`testlib.c > + > +btest_lto-testlib.obj: testlib.c > + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(btest_lto_CFLAGS) $(CFLAGS) -c -o btest_lto-testlib.obj `if > test -f 'testlib.c'; then $(CYGPATH_W) 'testlib.c'; else $(CYGPATH_W) > '$(srcdir)/testlib.c'; fi` > + > ctesta-btest.o: btest.c > $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) > $(CPPFLAGS) $(ctesta_CFLAGS) $(CFLAGS) -c -o ctesta-btest.o `test -f > 'btest.c' || echo '$(srcdir)/'`btest.c > > @@ -1607,6 +1633,13 @@ btest.log: btest$(EXEEXT) > --log-file $$b.log --trs-file $$b.trs \ > $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) > -- $(LOG_COMPILE) \ > "$$tst" $(AM_TESTS_FD_REDIRECT) > +btest_lto.log: btest_lto$(EXEEXT) > + @p='btest_lto$(EXEEXT)'; \ > + b='btest_lto'; \ > + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ > + --log-file $$b.log --trs-file $$b.trs \ > + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) > -- $(LOG_COMPILE) \ > + "$$tst" $(AM_TESTS_FD_REDIRECT) > btest_alloc.log: btest_alloc$(EXEEXT) > @p='btest_alloc$(EXEEXT)'; \ > b='btest_alloc'; \ > diff --git a/libbacktrace/btest.c b/libbacktrace/btest.c > index 636af4d24dc..b1c2a2a860d 100644 > --- a/libbacktrace/btest.c > +++ b/libbacktrace/btest.c > @@ -48,9 +48,9 @@ POSSIBILITY OF SUCH DAMAGE. */ > > /* Test the backtrace function with non-inlined functions. */ > > -static int test1 (void) __attribute__ ((noinline, unused)); > -static int f2 (int) __attribute__ ((noinline)); > -static int f3 (int, int) __attribute__ ((noinline)); > +static int test1 (void) __attribute__ ((noinline, noclone, unused)); > +static int f2 (int) __attribute__ ((noinline, noclone)); > +static int f3 (int, int) __attribute__ ((noinline, noclone)); > > static int > test1 (void) > @@ -162,9 +162,9 @@ f13 (int f1line, int f2line) > > /* Test the backtrace_simple function with non-inlined functions. */ > > -static int test3 (void) __attribute__ ((noinline, unused)); > -static int f22 (int) __attribute__ ((noinline)); > -static int f23 (int, int) __attribute__ ((noinline)); > +static int test3 (void) __attribute__ ((noinline, noclone, unused)); > +static int f22 (int) __attribute__ ((noinline, noclone)); > +static int f23 (int, int) __attribute__ ((noinline, noclone)); > > static int > test3 (void)
signature.asc
Description: PGP signature