This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 05/13] powerpc64le: link tests against ld.so


From: "Gabriel F. T. Gomes" <gabriel@inconstante.eti.br>

As noted in the following commit

commit 91ac3a7d8474480685632cd25f844d3154c69fdf
Author: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Date:   Mon Jul 17 17:48:59 2017 -0300

    powerpc: Fix float128 IFUNC relocations [BZ #21707]

libgcc depends on a symbol, __parse_hwcap_and_convert_at_platform,
provided by the loaders.  This dependency reflected on the need to link
some float128 tests against the loader.

In preparation for the transition of the format of long double - from
IBM Extended Precision to IEEE 754 128-bits floating-point - on
powerpc64le, this patch adds the linking of the loader to the tests for
long double, since after the switch they will also depend on
__parse_hwcap_and_convert_at_platform.

Tested on powerpc64le.
---
 sysdeps/powerpc/powerpc64/le/Makefile | 55 ++++++++++++++++++++++-----
 1 file changed, 45 insertions(+), 10 deletions(-)

diff --git a/sysdeps/powerpc/powerpc64/le/Makefile b/sysdeps/powerpc/powerpc64/le/Makefile
index 480e113637..ee2b78bb5f 100644
--- a/sysdeps/powerpc/powerpc64/le/Makefile
+++ b/sysdeps/powerpc/powerpc64/le/Makefile
@@ -35,12 +35,29 @@ CFLAGS-test-math-iscanonical.cc += -mfloat128
 CFLAGS-test-math-iseqsig.cc += -mfloat128
 CFLAGS-test-math-issignaling.cc += -mfloat128
 CFLAGS-test-math-iszero.cc += -mfloat128
-$(foreach test, \
-	  test-float128% test-ifloat128% test-float64x% test-ifloat64x% \
+$(foreach test,\
+	  basic-test \
+	  bug-nextafter \
+	  bug-nexttoward \
+	  test-fenv-clear \
+	  test-iszero-excess-precision \
+	  test-math-iscanonical \
+	  test-math-iseqsig \
+	  test-math-issignaling \
+	  test-math-iszero \
+	  test-misc \
+	  test-nan-overflow \
+	  test-nan-payload \
+	  test-snan \
+	  test-tgmath \
+	  test-tgmath2 \
+	  tst-CMPLX2 \
+	  test-%-ldbl-128ibm \
+	  test-ldouble% test-ildouble% \
+	  test-float128% test-ifloat128% \
+	  test-float64x% test-ifloat64x% \
 	  $(foreach pair,$(f128-pairs),test-$(pair)%) \
-	  test-math-iscanonical test-math-iseqsig test-math-issignaling \
-	  test-math-iszero, \
-	  $(objpfx)$(test)): \
+	  ,$(objpfx)$(test)): \
   gnulib-tests += $(f128-loader-link)
 
 CFLAGS-s_logbl-power7.c += $(type-ldouble-CFLAGS)
@@ -99,11 +116,23 @@ CFLAGS-tst-strfrom-locale.c += -mfloat128
 CFLAGS-strfrom-skeleton.c += -mfloat128
 CFLAGS-tst-strtod-nan-sign.c += -mfloat128
 CFLAGS-tst-wcstod-nan-sign.c += -mfloat128
-$(foreach test,bug-strtod bug-strtod2 bug-strtod2 tst-strtod-round \
-tst-wcstod-round tst-strtod6 tst-strrom tst-strfrom-locale \
-tst-strtod-nan-locale tst-wcstod-nan-locale \
-strfrom-skeleton tst-strtod-nan-sign tst-wcstod-nan-sign, \
-$(objpfx)$(test)): gnulib-tests += $(f128-loader-link)
+
+$(foreach test, \
+	  bug-strtod \
+	  bug-strtod2 \
+	  strfrom-skeleton \
+	  tst-strfrom-locale \
+	  tst-strrom \
+	  tst-strtod \
+	  tst-strtod-nan-locale \
+	  tst-strtod-nan-sign \
+	  tst-strtod-round \
+	  tst-strtod6 \
+	  tst-wcstod-nan-locale \
+	  tst-wcstod-nan-sign \
+	  tst-wcstod-round \
+	  ,$(objpfx)$(test)): \
+  gnulib-tests += $(f128-loader-link)
 
 # When building glibc with support for _Float128, the powers of ten tables in
 # fpioconst.c and in the string conversion functions must be extended.  Some
@@ -124,6 +153,12 @@ ifeq ($(subdir),stdio-common)
 CFLAGS-printf_fp.c = -mfloat128
 CFLAGS-printf_fphex.c = -mfloat128
 CFLAGS-printf_size.c = -mfloat128
+$(foreach test, \
+	  tst-sprintf2 \
+	  tst-sprintf3 \
+	  tstdiomisc \
+	  ,$(objpfx)$(test)): \
+  gnulib-tests += $(f128-loader-link)
 endif
 
 
-- 
2.21.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]