e354a5
commit 221e4babca17b363df2c56e839572e9f7ab7d127
e354a5
Author: Joseph Myers <joseph@codesourcery.com>
e354a5
Date:   Wed Sep 12 20:31:24 2018 +0000
e354a5
e354a5
    Include most of elf/ modules-names in modules-names-tests.
e354a5
    
e354a5
    I'm testing a patch to let the compiler expand calls to floor in libm
e354a5
    as built-in function calls as much as possible, instead of calling
e354a5
    __floor, so that no architecture-specific __floor inlines are needed,
e354a5
    and then to arrange for non-inlined calls to end up calling __floor,
e354a5
    as done with sqrt and __ieee754_sqrt.
e354a5
    
e354a5
    This shows up elf/tst-relsort1mod2.c calling floor, which must not be
e354a5
    converted to a call to __floor.  Now, while an IS_IN (libm)
e354a5
    conditional could be added to the existing conditionals on such
e354a5
    redirections in include/math.h, the _ISOMAC conditional ought to
e354a5
    suffice (code in other glibc libraries shouldn't be calling floor or
e354a5
    sqrt anyway, as they aren't provided in libc and the other libraries
e354a5
    don't link with libm).  But while tests are mostly now built with
e354a5
    _ISOMAC defined, test modules in modules-names aren't unless also
e354a5
    listed in modules-names-tests.
e354a5
    
e354a5
    As far as I can see, all the modules in modules-names in elf/ are in
e354a5
    fact parts of tests and so listing them in modules-names-tests is
e354a5
    appropriate, so they get built with something closer to the headers
e354a5
    used for user code, except in a few cases that actually rely on
e354a5
    something from internal headers.  This patch duly sets
e354a5
    modules-names-tests there accordingly (filtering out those tests that
e354a5
    fail to build without internal headers).
e354a5
    
e354a5
    Tested for x86_64, and with build-many-glibcs.py.
e354a5
    
e354a5
            * elf/Makefile (modules-names-tests): New variable.
e354a5
e354a5
Conflicts:
e354a5
	elf/Makefile
e354a5
	  (Different backport order for tests.)
e354a5
e354a5
diff --git a/elf/Makefile b/elf/Makefile
e354a5
index b4b618ce62a9e6df..89dff92adfc417f5 100644
e354a5
--- a/elf/Makefile
e354a5
+++ b/elf/Makefile
e354a5
@@ -306,6 +306,11 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
e354a5
 		tst-dlopenfailmod3 \
e354a5
 		tst-filterobj-flt tst-filterobj-aux tst-filterobj-filtee
e354a5
 
e354a5
+# Most modules build with _ISOMAC defined, but those filtered out
e354a5
+# depend on internal headers.
e354a5
+modules-names-tests = $(filter-out ifuncmod% tst-libc_dlvsym-dso tst-tlsmod%,\
e354a5
+				   $(modules-names))
e354a5
+
e354a5
 ifeq (yes,$(have-mtls-dialect-gnu2))
e354a5
 tests += tst-gnu2-tls1
e354a5
 modules-names += tst-gnu2-tls1mod