GNU C Library master sources branch master updated. glibc-2.22-585-g578d080

aurel32@sourceware.org aurel32@sourceware.org
Wed Dec 9 19:12:00 GMT 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  578d080544d77daad68dd697e77f2dcff50c6c7b (commit)
       via  3b51c390f76744ccb76a07869c543db4f68484bd (commit)
      from  aad287f35a801a4b53b27d7e2a8cb54fb708fb97 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=578d080544d77daad68dd697e77f2dcff50c6c7b

commit 578d080544d77daad68dd697e77f2dcff50c6c7b
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Mon Dec 7 23:07:17 2015 +0100

    mips: fix testsuite build for O32 FPXX ABI on pre-R2 CPU
    
    On MIPS when the toolchain is using the O32 FPXX ABI, the testsuite
    fails to build for pre-R2 CPU.
    
    It assumes that it is possible to use the -mfp64 option to build
    tst-abi-fp64amod and tst-abi-fp64mod, while this requires a CPU which
    supports the mfhc1 and mthc1 instructions, ie at least a R2 CPU:
    
      error: '-mgp32' and '-mfp64' can only be combined if the target
      supports the mfhc1 and mthc1 instructions
    
    The same way it assumes that it is possible to use the -modd-spreg option
    to build tst-abi-fpxxomod and tst-abi-fp64mod, while this requires at
    least a R1 CPU:
    
      warning: the 'mips2' architecture does not support odd
      single-precision registers
    
    This patches changes that by checking the usability of -mfp64 and
    -modd-spreg options in configure, and disable those tests when they can
    not be used.

diff --git a/ChangeLog b/ChangeLog
index 490cfc7..3ead583 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
 2015-12-09  Aurelien Jarno  <aurelien@aurel32.net>
 
+	* sysdeps/unix/sysv/linux/mips/configure.ac (has-mpf64): Define to
+	record the current if the current ABI and CPU support the FP64
+	extension.
+	(has-modd-spreg): Define to record the current if the current ABI and
+	CPU support 32-bit floating point values in odd FPU registers.
+	* sysdeps/unix/sysv/linux/mips/configure: Regenerate.
+	* sysdeps/mips/Makefile (tst-abi-fpxxomod): Only build when
+	$(has-modd-spreg) equals yes.
+	(tst-abi-fp64amod): Only build when $(has-mpf64) equals yes.
+	(tst-abi-fp64mod): Only build when both $(has-mpf64) and
+	$(has-modd-spreg) equal yes.
+
+2015-12-09  Aurelien Jarno  <aurelien@aurel32.net>
+
 	* sysdeps/unix/grantpt.c (grantpt): Call__basename instead of
 	basename.
 
diff --git a/sysdeps/mips/Makefile b/sysdeps/mips/Makefile
index 463b121..3d35523 100644
--- a/sysdeps/mips/Makefile
+++ b/sysdeps/mips/Makefile
@@ -42,17 +42,23 @@ fpabi-modules-names += tst-abi-fpxxmod
 CFLAGS-tst-abi-fpxxmod.c += -mfpxx -mno-odd-spreg
 endif
 ifneq (,$(filter $(o32-fpabi),xx xxo))
+ifeq ($(has-modd-spreg),yes)
 fpabi-modules-names += tst-abi-fpxxomod
 CFLAGS-tst-abi-fpxxomod.c += -mfpxx -modd-spreg
 endif
+endif
 ifneq (,$(filter $(o32-fpabi),xx 64a))
+ifeq ($(has-mpf64),yes)
 fpabi-modules-names += tst-abi-fp64amod
 CFLAGS-tst-abi-fp64amod.c += -mfp64 -mno-odd-spreg
 endif
+endif
 ifneq (,$(filter $(o32-fpabi),xx xxo 64a 64))
+ifeq ($(has-mpf64)-$(has-modd-spreg),yes-yes)
 fpabi-modules-names += tst-abi-fp64mod
 CFLAGS-tst-abi-fp64mod.c += -mfp64 -modd-spreg
 endif
+endif
 modules-names += $(fpabi-modules-names)
 
 comma:=,
diff --git a/sysdeps/unix/sysv/linux/mips/configure b/sysdeps/unix/sysv/linux/mips/configure
index 2d79f55..dee56aa 100644
--- a/sysdeps/unix/sysv/linux/mips/configure
+++ b/sysdeps/unix/sysv/linux/mips/configure
@@ -106,6 +106,8 @@ if test -z "$libc_mips_float"; then
 fi
 
 libc_mips_o32_fp=
+libc_cv_mips_fp64=
+libc_cv_mips_modd_spreg=
 
 if test x"$libc_mips_abi" = xo32 -a x"$libc_mips_float" = xhard; then
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -219,9 +221,34 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+  if { ac_try='${CC-cc} -mfp64 -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then :
+  libc_cv_mips_fp64=yes
+else
+  libc_cv_mips_fp64=no
+fi
+  if { ac_try='${CC-cc} -Werror -modd-spreg -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then :
+  libc_cv_mips_modd_spreg=yes
+else
+  libc_cv_mips_modd_spreg=no
+fi
 fi
 config_vars="$config_vars
 o32-fpabi = ${libc_mips_o32_fp}"
+config_vars="$config_vars
+has-mpf64 = ${libc_cv_mips_fp64}"
+config_vars="$config_vars
+has-modd-spreg = ${libc_cv_mips_modd_spreg}"
 
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
diff --git a/sysdeps/unix/sysv/linux/mips/configure.ac b/sysdeps/unix/sysv/linux/mips/configure.ac
index 5039ec9..45147c5 100644
--- a/sysdeps/unix/sysv/linux/mips/configure.ac
+++ b/sysdeps/unix/sysv/linux/mips/configure.ac
@@ -45,6 +45,8 @@ if test -z "$libc_mips_float"; then
 fi
 
 libc_mips_o32_fp=
+libc_cv_mips_fp64=
+libc_cv_mips_modd_spreg=
 
 if test x"$libc_mips_abi" = xo32 -a x"$libc_mips_float" = xhard; then
   AC_COMPILE_IFELSE(
@@ -84,8 +86,13 @@ if test x"$libc_mips_abi" = xo32 -a x"$libc_mips_float" = xhard; then
               [libc_mips_o32_fp=64],
               [])])])])])],
     [])
+
+  LIBC_TRY_CC_OPTION([-mfp64], [libc_cv_mips_fp64=yes], [libc_cv_mips_fp64=no])
+  LIBC_TRY_CC_OPTION([-Werror -modd-spreg], [libc_cv_mips_modd_spreg=yes], [libc_cv_mips_modd_spreg=no])
 fi
 LIBC_CONFIG_VAR([o32-fpabi],[${libc_mips_o32_fp}])
+LIBC_CONFIG_VAR([has-mpf64],[${libc_cv_mips_fp64}])
+LIBC_CONFIG_VAR([has-modd-spreg],[${libc_cv_mips_modd_spreg}])
 
 AC_COMPILE_IFELSE(
   [AC_LANG_PROGRAM([

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=3b51c390f76744ccb76a07869c543db4f68484bd

commit 3b51c390f76744ccb76a07869c543db4f68484bd
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Fri Dec 4 14:49:03 2015 +0100

    Fix grantpt basename namespace bug
    
    Commit cf06a4e3 removed test-xfail-POSIX2008/unistd.h/linknamespace, but
    left one basename namespace issue in grantpt. However this issue is not
    visible with the default configuration buy only when configure is passed
    the --enable-pt_chown option.

diff --git a/ChangeLog b/ChangeLog
index 3205cee..490cfc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-12-09  Aurelien Jarno  <aurelien@aurel32.net>
+
+	* sysdeps/unix/grantpt.c (grantpt): Call__basename instead of
+	basename.
+
 2015-12-08  Siddhesh Poyarekar  <sid@reserved-bit.com>
 
 	* benchtests/Makefile (bench-math): Move ffs and ffsll...
diff --git a/sysdeps/unix/grantpt.c b/sysdeps/unix/grantpt.c
index c04c85d..f019b9d 100644
--- a/sysdeps/unix/grantpt.c
+++ b/sysdeps/unix/grantpt.c
@@ -195,7 +195,7 @@ grantpt (int fd)
       CLOSE_ALL_FDS ();
 # endif
 
-      execle (_PATH_PT_CHOWN, basename (_PATH_PT_CHOWN), NULL, NULL);
+      execle (_PATH_PT_CHOWN, __basename (_PATH_PT_CHOWN), NULL, NULL);
       _exit (FAIL_EXEC);
     }
   else

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                 |   19 +++++++++++++++++++
 sysdeps/mips/Makefile                     |    6 ++++++
 sysdeps/unix/grantpt.c                    |    2 +-
 sysdeps/unix/sysv/linux/mips/configure    |   27 +++++++++++++++++++++++++++
 sysdeps/unix/sysv/linux/mips/configure.ac |    7 +++++++
 5 files changed, 60 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources



More information about the Glibc-cvs mailing list