[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r19839 - in /fsf/trunk/libc: ./ elf/ inet/ math/ ports/ ports/sysdeps/alpha/ ports/sysdeps/m68k/m680x0/fpu/ ports/sysdeps/un...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r19839 - in /fsf/trunk/libc: ./ elf/ inet/ math/ ports/ ports/sysdeps/alpha/ ports/sysdeps/m68k/m680x0/fpu/ ports/sysdeps/un...
- From: eglibc@xxxxxxxxxx
- Date: Fri, 27 Jul 2012 00:01:50 -0000
Author: eglibc
Date: Fri Jul 27 00:01:49 2012
New Revision: 19839
Log:
Import glibc-mainline for 2012-07-27
Added:
fsf/trunk/libc/inet/check_native.c
fsf/trunk/libc/sysdeps/i386/tst-audit.h
fsf/trunk/libc/sysdeps/powerpc/powerpc32/tst-audit.h
fsf/trunk/libc/sysdeps/powerpc/powerpc64/tst-audit.h
fsf/trunk/libc/sysdeps/s390/s390-32/tst-audit.h
fsf/trunk/libc/sysdeps/s390/s390-64/tst-audit.h
fsf/trunk/libc/sysdeps/sh/tst-audit.h
fsf/trunk/libc/sysdeps/sparc/sparc32/tst-audit.h
fsf/trunk/libc/sysdeps/sparc/sparc64/tst-audit.h
fsf/trunk/libc/sysdeps/x86_64/tst-audit.h
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/elf/tst-auditmod1.c
fsf/trunk/libc/elf/tst-auditmod3b.c
fsf/trunk/libc/elf/tst-auditmod4b.c
fsf/trunk/libc/elf/tst-auditmod5b.c
fsf/trunk/libc/elf/tst-auditmod6b.c
fsf/trunk/libc/elf/tst-auditmod6c.c
fsf/trunk/libc/elf/tst-auditmod7b.c
fsf/trunk/libc/math/libm-test.inc
fsf/trunk/libc/math/s_clog.c
fsf/trunk/libc/math/s_clog10.c
fsf/trunk/libc/math/s_clog10f.c
fsf/trunk/libc/math/s_clog10l.c
fsf/trunk/libc/math/s_clogf.c
fsf/trunk/libc/math/s_clogl.c
fsf/trunk/libc/ports/ChangeLog.alpha
fsf/trunk/libc/ports/ChangeLog.hppa
fsf/trunk/libc/ports/ChangeLog.ia64
fsf/trunk/libc/ports/ChangeLog.m68k
fsf/trunk/libc/ports/ChangeLog.tile
fsf/trunk/libc/ports/sysdeps/alpha/tst-audit.h
fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h
fsf/trunk/libc/sunrpc/rpc_hout.c
fsf/trunk/libc/sunrpc/rpc_main.c
fsf/trunk/libc/sunrpc/rpc_svcout.c
fsf/trunk/libc/sysdeps/generic/tst-audit.h
fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/siginfo.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/bits/siginfo.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/epoll.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/ptrace.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/siginfo.h
fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Jul 27 00:01:49 2012
@@ -1,3 +1,113 @@
+2012-07-26 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * sunrpc/rpc_hout.c (pdeclaration): Call f_print with a "%s" format
+ rather than a string variable.
+ * sunrpc/rpc_main.c (h_output): Likewise.
+ * sunrpc/rpc_svcout.c (write_real_program): Likewise.
+
+2012-07-26 Pino Toscano <toscano.pino@xxxxxxxxxx>
+
+ * inet/check_native.c: New file.
+
+2012-07-26 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ [BZ #13629]
+ * math/s_clog.c (__clog): Use __log1p or direct log1p calculation
+ if larger part has absolute value 1.0.
+ * math/s_clog10.c (__clog10): Likewise.
+ * math/s_clog10f.c (__clog10f): Likewise.
+ * math/s_clog10l.c (__clog10l): Likewise.
+ * math/s_clogf.c (__clogf): Likewise.
+ * math/s_clogl.c (__clogl): Likewise.
+ * math/libm-test.inc (clog_test): Add more tests.
+ (clog10_test): Likewise.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * elf/tst-auditmod1.c (pltenter): Remove all definitions of macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ Update #error for removed macros to refer only to definitions in
+ tst-audit.h.
+ * elf/tst-auditmod3b.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * elf/tst-auditmod4b.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * elf/tst-auditmod5b.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * elf/tst-auditmod6b.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * elf/tst-auditmod6c.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * elf/tst-auditmod7b.c (pltenter): Remove all definitions of
+ macro.
+ (pltexit): Likewise.
+ (La_regs): Likewise.
+ (La_retval): Likewise.
+ (int_retval): Likewise.
+ * sysdeps/generic/tst-audit.h: Update comment to refer only to
+ macro definitions in tst-audit.h.
+ * sysdeps/i386/tst-audit.h: New file.
+ * sysdeps/powerpc/powerpc32/tst-audit.h: Likewise.
+ * sysdeps/powerpc/powerpc64/tst-audit.h: Likewise.
+ * sysdeps/s390/s390-32/tst-audit.h: Likewise.
+ * sysdeps/s390/s390-64/tst-audit.h: Likewise.
+ * sysdeps/sh/tst-audit.h: Likewise.
+ * sysdeps/sparc/sparc32/tst-audit.h: Likewise.
+ * sysdeps/sparc/sparc64/tst-audit.h: Likewise.
+ * sysdeps/x86_64/tst-audit.h: Likewise.
+
+2012-07-26 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Add __THROW for
+ ptrace.
+
+ * sysdeps/unix/sysv/linux/sys/ptrace.h (__ptrace_eventcodes): Add
+ new value PTRACE_EVENT_SECCOMP from Linux 3.5.
+ (__ptrace_setoptions): Add new value PTRACE_O_TRACESECCOMP, adjust
+ PTRACE_O_MASK.
+ * sysdeps/unix/sysv/linux/s390/bits/ptrace.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/ptrace.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/ptrace.h: Likewise.
+
+ * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLWAKEUP): Add new
+ value.
+
+ * sysdeps/unix/sysv/linux/bits/siginfo.h (siginfo_t): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new macro.
+ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h (siginfo_t): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new marcro.
+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (siginfo_t): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new macro.
+ * sysdeps/unix/sysv/linux/x86/bits/siginfo.h (struct): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new macro.
+
2012-07-25 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
[BZ #13717]
Modified: fsf/trunk/libc/elf/tst-auditmod1.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod1.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod1.c Fri Jul 27 00:01:49 2012
@@ -102,79 +102,10 @@
return sym->st_value;
}
-#ifdef __i386__
-# define pltenter la_i86_gnu_pltenter
-# define pltexit la_i86_gnu_pltexit
-# define La_regs La_i86_regs
-# define La_retval La_i86_retval
-# define int_retval lrv_eax
-#elif defined __x86_64__
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-# else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-# endif
-# define int_retval lrv_rax
-#elif defined __powerpc__ && __WORDSIZE == 32
-# define pltenter la_ppc32_gnu_pltenter
-# define pltexit la_ppc32_gnu_pltexit
-# define La_regs La_ppc32_regs
-# define La_retval La_ppc32_retval
-# define int_retval lrv_r3
-#elif defined __powerpc__ && __WORDSIZE == 64
-# define pltenter la_ppc64_gnu_pltenter
-# define pltexit la_ppc64_gnu_pltexit
-# define La_regs La_ppc64_regs
-# define La_retval La_ppc64_retval
-# define int_retval lrv_r3
-#elif defined __sh__
-# define pltenter la_sh_gnu_pltenter
-# define pltexit la_sh_gnu_pltexit
-# define La_regs La_sh_regs
-# define La_retval La_sh_retval
-# define int_retval lrv_r0
-#elif defined __alpha__
-# define pltenter la_alpha_gnu_pltenter
-# define pltexit la_alpha_gnu_pltexit
-# define La_regs La_alpha_regs
-# define La_retval La_alpha_retval
-# define int_retval lrv_r0
-#elif defined __s390__ && __WORDSIZE == 32
-# define pltenter la_s390_32_gnu_pltenter
-# define pltexit la_s390_32_gnu_pltexit
-# define La_regs La_s390_32_regs
-# define La_retval La_s390_32_retval
-# define int_retval lrv_r2
-#elif defined __s390__ && __WORDSIZE == 64
-# define pltenter la_s390_64_gnu_pltenter
-# define pltexit la_s390_64_gnu_pltexit
-# define La_regs La_s390_64_regs
-# define La_retval La_s390_64_retval
-# define int_retval lrv_r2
-#elif defined __sparc__ && __WORDSIZE == 32
-# define pltenter la_sparc32_gnu_pltenter
-# define pltexit la_sparc32_gnu_pltexit
-# define La_regs La_sparc32_regs
-# define La_retval La_sparc32_retval
-# define int_retval lrv_reg[0]
-#elif defined __sparc__ && __WORDSIZE == 64
-# define pltenter la_sparc64_gnu_pltenter
-# define pltexit la_sparc64_gnu_pltexit
-# define La_regs La_sparc64_regs
-# define La_retval La_sparc64_retval
-# define int_retval lrv_reg[0]
-#endif
-
#include <tst-audit.h>
#if (!defined (pltenter) || !defined (pltexit) || !defined (La_regs) \
|| !defined (La_retval) || !defined (int_retval))
-# error "architecture specific code needed in sysdeps/CPU/tst-audit.h or here"
+# error "architecture specific code needed in sysdeps/CPU/tst-audit.h"
#endif
Modified: fsf/trunk/libc/elf/tst-auditmod3b.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod3b.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod3b.c Fri Jul 27 00:01:49 2012
@@ -105,19 +105,6 @@
return sym->st_value;
}
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
ElfW(Addr)
Modified: fsf/trunk/libc/elf/tst-auditmod4b.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod4b.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod4b.c Fri Jul 27 00:01:49 2012
@@ -94,19 +94,6 @@
return sym->st_value;
}
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
#ifdef __AVX__
Modified: fsf/trunk/libc/elf/tst-auditmod5b.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod5b.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod5b.c Fri Jul 27 00:01:49 2012
@@ -95,19 +95,6 @@
return sym->st_value;
}
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
ElfW(Addr)
Modified: fsf/trunk/libc/elf/tst-auditmod6b.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod6b.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod6b.c Fri Jul 27 00:01:49 2012
@@ -94,19 +94,6 @@
return sym->st_value;
}
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
#ifdef __AVX__
Modified: fsf/trunk/libc/elf/tst-auditmod6c.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod6c.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod6c.c Fri Jul 27 00:01:49 2012
@@ -94,19 +94,6 @@
return sym->st_value;
}
-# ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
#ifdef __AVX__
Modified: fsf/trunk/libc/elf/tst-auditmod7b.c
==============================================================================
--- fsf/trunk/libc/elf/tst-auditmod7b.c (original)
+++ fsf/trunk/libc/elf/tst-auditmod7b.c Fri Jul 27 00:01:49 2012
@@ -94,19 +94,6 @@
return sym->st_value;
}
-#ifndef __ILP32__
-# define pltenter la_x86_64_gnu_pltenter
-# define pltexit la_x86_64_gnu_pltexit
-# define La_regs La_x86_64_regs
-# define La_retval La_x86_64_retval
-#else
-# define pltenter la_x32_gnu_pltenter
-# define pltexit la_x32_gnu_pltexit
-# define La_regs La_x32_regs
-# define La_retval La_x32_retval
-#endif
-#define int_retval lrv_rax
-
#include <tst-audit.h>
#ifdef __AVX__
Added: fsf/trunk/libc/inet/check_native.c
==============================================================================
--- fsf/trunk/libc/inet/check_native.c (added)
+++ fsf/trunk/libc/inet/check_native.c Fri Jul 27 00:01:49 2012
@@ -1,0 +1,27 @@
+/* Determine whether interfaces use native transport. Generic version.
+ Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <ifaddrs.h>
+
+
+void
+attribute_hidden
+__check_native (uint32_t a1_index, int *a1_native,
+ uint32_t a2_index, int *a2_native)
+{
+}
Modified: fsf/trunk/libc/math/libm-test.inc
==============================================================================
--- fsf/trunk/libc/math/libm-test.inc (original)
+++ fsf/trunk/libc/math/libm-test.inc Fri Jul 27 00:01:49 2012
@@ -2464,6 +2464,26 @@
# endif
#endif
+ TEST_c_c (clog, 1.0L, 0x1.234566p-10L, 6.172834701221959432440126967147726538097e-7L, 1.111110564353742042376451655136933182201e-3L);
+ TEST_c_c (clog, -1.0L, 0x1.234566p-20L, 5.886877547844618300918562490463748605537e-13L, 3.141591568520436206990380699322226378452L);
+ TEST_c_c (clog, 0x1.234566p-30L, 1.0L, 5.614163921211322622623353961365728040115e-19L, 1.570796325735258575254858696548386439740L);
+ TEST_c_c (clog, -0x1.234566p-40L, -1.0L, 5.354083939753840089583620652120903838944e-25L, -1.570796326795931422008642456283782656359L);
+ TEST_c_c (clog, 0x1.234566p-50L, 1.0L, 5.106052341226425256332038420428899201070e-31L, 1.570796326794895608681734464330528755366L);
+ TEST_c_c (clog, 0x1.234566p-60L, 1.0L, 4.869510976053643471080816669875627875933e-37L, 1.570796326794896618244456860363082279319L);
+ TEST_c_c (clog, 0x1p-62L, 1.0L, 2.350988701644575015937473074444491355582e-38L, 1.570796326794896619014481257142650555297L);
+ TEST_c_c (clog, 0x1p-63L, 1.0L, 5.877471754111437539843682686111228389059e-39L, 1.570796326794896619122901474391200998698L, UNDERFLOW_EXCEPTION_FLOAT);
+ TEST_c_c (clog, 0x1p-64L, 1.0L, 1.469367938527859384960920671527807097271e-39L, 1.570796326794896619177111583015476220398L, UNDERFLOW_EXCEPTION_FLOAT);
+#ifndef TEST_FLOAT
+ TEST_c_c (clog, 0x1p-510L, 1.0L, 4.450147717014402766180465434664808128438e-308L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM);
+ TEST_c_c (clog, 0x1p-511L, 1.0L, 1.112536929253600691545116358666202032110e-308L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE);
+ TEST_c_c (clog, 0x1p-512L, 1.0L, 2.781342323134001728862790896665505080274e-309L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE);
+#endif
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+ TEST_c_c (clog, 0x1p-8190L, 1.0L, 6.724206286224187012525355634643505205196e-4932L, 1.570796326794896619231321691639751442099L);
+ TEST_c_c (clog, 0x1p-8191L, 1.0L, 1.681051571556046753131338908660876301299e-4932L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION);
+ TEST_c_c (clog, 0x1p-8192L, 1.0L, 4.202628928890116882828347271652190753248e-4933L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION);
+#endif
+
END (clog, complex);
}
@@ -2591,6 +2611,26 @@
TEST_c_c (clog10, 0x1.fp+16383L, 0x1p-16494L, 4932.061660674182269085496060792589701158L, plus_zero, UNDERFLOW_EXCEPTION);
TEST_c_c (clog10, 0x1.fp+16383L, -0x1p-16494L, 4932.061660674182269085496060792589701158L, minus_zero, UNDERFLOW_EXCEPTION);
# endif
+#endif
+
+ TEST_c_c (clog10, 1.0L, 0x1.234566p-10L, 2.680828048441605163181684680300513080769e-7L, 4.825491868832381486767558728169977751564e-4L);
+ TEST_c_c (clog10, -1.0L, 0x1.234566p-20L, 2.556638434669064077889576526006849923281e-13L, 1.364375882602207106407956770293808181427L);
+ TEST_c_c (clog10, 0x1.234566p-30L, 1.0L, 2.438200411482400072282924063740535840474e-19L, 6.821881764607257184291586401763604544928e-1L);
+ TEST_c_c (clog10, -0x1.234566p-40L, -1.0L, 2.325249110681915353442924915876654139373e-25L, -6.821881769213700828789403802671540158935e-1L);
+ TEST_c_c (clog10, 0x1.234566p-50L, 1.0L, 2.217530356103816369479108963807448194409e-31L, 6.821881769209202348667823902864283966959e-1L);
+ TEST_c_c (clog10, 0x1.234566p-60L, 1.0L, 2.114801746467415208319767917450504756866e-37L, 6.821881769209206733143018621078368211515e-1L);
+ TEST_c_c (clog10, 0x1p-61L, 1.0L, 4.084085680564517578238994467153626207224e-38L, 6.821881769209206735545466044044889962925e-1L);
+ TEST_c_c (clog10, 0x1p-62L, 1.0L, 1.021021420141129394559748616788406551878e-38L, 6.821881769209206736487192085600834406988e-1L, UNDERFLOW_EXCEPTION_FLOAT);
+ TEST_c_c (clog10, 0x1p-63L, 1.0L, 2.552553550352823486399371541971016379740e-39L, 6.821881769209206736958055106378806629019e-1L, UNDERFLOW_EXCEPTION_FLOAT);
+#ifndef TEST_FLOAT
+ TEST_c_c (clog10, 0x1p-509L, 1.0L, 7.730698388614835910296270976605350994446e-308L, 6.821881769209206737428918127156778851051e-1L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM);
+ TEST_c_c (clog10, 0x1p-510L, 1.0L, 1.932674597153708977574067744151337748612e-308L, 6.821881769209206737428918127156778851051e-1L, UNDERFLOW_EXCEPTION_DOUBLE);
+ TEST_c_c (clog10, 0x1p-511L, 1.0L, 4.831686492884272443935169360378344371529e-309L, 6.821881769209206737428918127156778851051e-1L, UNDERFLOW_EXCEPTION_DOUBLE);
+#endif
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+ TEST_c_c (clog10, 0x1p-8189L, 1.0L, 1.168114274114528946314738738025008370069e-4931L, 6.821881769209206737428918127156778851051e-1L);
+ TEST_c_c (clog10, 0x1p-8190L, 1.0L, 2.920285685286322365786846845062520925172e-4932L, 6.821881769209206737428918127156778851051e-1L, UNDERFLOW_EXCEPTION);
+ TEST_c_c (clog10, 0x1p-8191L, 1.0L, 7.300714213215805914467117112656302312931e-4933L, 6.821881769209206737428918127156778851051e-1L, UNDERFLOW_EXCEPTION);
#endif
END (clog10, complex);
Modified: fsf/trunk/libc/math/s_clog.c
==============================================================================
--- fsf/trunk/libc/math/s_clog.c (original)
+++ fsf/trunk/libc/math/s_clog.c Fri Jul 27 00:01:49 2012
@@ -41,20 +41,20 @@
{
/* Neither real nor imaginary part is NaN. */
double absx = fabs (__real__ x), absy = fabs (__imag__ x);
- double d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ double t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > DBL_MAX / 2.0)
{
scale = -1;
absx = __scalbn (absx, scale);
absy = (absy >= DBL_MIN * 2.0 ? __scalbn (absy, scale) : 0.0);
- }
- else if (absy > DBL_MAX / 2.0)
- {
- scale = -1;
- absx = (absx >= DBL_MIN * 2.0 ? __scalbn (absx, scale) : 0.0);
- absy = __scalbn (absy, scale);
}
else if (absx < DBL_MIN && absy < DBL_MIN)
{
@@ -63,9 +63,27 @@
absy = __scalbn (absy, scale);
}
- d = __ieee754_hypot (absx, absy);
+ if (absx == 1.0 && scale == 0)
+ {
+ double absy2 = absy * absy;
+ if (absy2 <= DBL_MIN * 2.0)
+ {
+#if __FLT_EVAL_METHOD__ == 0
+ __real__ result = absy2 / 2.0 - absy2 * absy2 / 4.0;
+#else
+ volatile double force_underflow = absy2 * absy2 / 4.0;
+ __real__ result = absy2 / 2.0 - force_underflow;
+#endif
+ }
+ else
+ __real__ result = __log1p (absy2) / 2.0;
+ }
+ else
+ {
+ double d = __ieee754_hypot (absx, absy);
+ __real__ result = __ieee754_log (d) - scale * M_LN2;
+ }
- __real__ result = __ieee754_log (d) - scale * M_LN2;
__imag__ result = __ieee754_atan2 (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/math/s_clog10.c
==============================================================================
--- fsf/trunk/libc/math/s_clog10.c (original)
+++ fsf/trunk/libc/math/s_clog10.c Fri Jul 27 00:01:49 2012
@@ -44,20 +44,20 @@
{
/* Neither real nor imaginary part is NaN. */
double absx = fabs (__real__ x), absy = fabs (__imag__ x);
- double d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ double t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > DBL_MAX / 2.0)
{
scale = -1;
absx = __scalbn (absx, scale);
absy = (absy >= DBL_MIN * 2.0 ? __scalbn (absy, scale) : 0.0);
- }
- else if (absy > DBL_MAX / 2.0)
- {
- scale = -1;
- absx = (absx >= DBL_MIN * 2.0 ? __scalbn (absx, scale) : 0.0);
- absy = __scalbn (absy, scale);
}
else if (absx < DBL_MIN && absy < DBL_MIN)
{
@@ -66,9 +66,27 @@
absy = __scalbn (absy, scale);
}
- d = __ieee754_hypot (absx, absy);
+ if (absx == 1.0 && scale == 0)
+ {
+ double absy2 = absy * absy;
+ if (absy2 <= DBL_MIN * 2.0 * M_LN10)
+ {
+#if __FLT_EVAL_METHOD__ == 0
+ __real__ result = (absy2 / 2.0 - absy2 * absy2 / 4.0) * M_LOG10E;
+#else
+ volatile double force_underflow = absy2 * absy2 / 4.0;
+ __real__ result = (absy2 / 2.0 - force_underflow) * M_LOG10E;
+#endif
+ }
+ else
+ __real__ result = __log1p (absy2) * (M_LOG10E / 2.0);
+ }
+ else
+ {
+ double d = __ieee754_hypot (absx, absy);
+ __real__ result = __ieee754_log10 (d) - scale * M_LOG10_2;
+ }
- __real__ result = __ieee754_log10 (d) - scale * M_LOG10_2;
__imag__ result = M_LOG10E * __ieee754_atan2 (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/math/s_clog10f.c
==============================================================================
--- fsf/trunk/libc/math/s_clog10f.c (original)
+++ fsf/trunk/libc/math/s_clog10f.c Fri Jul 27 00:01:49 2012
@@ -44,20 +44,20 @@
{
/* Neither real nor imaginary part is NaN. */
float absx = fabsf (__real__ x), absy = fabsf (__imag__ x);
- float d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ float t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > FLT_MAX / 2.0f)
{
scale = -1;
absx = __scalbnf (absx, scale);
absy = (absy >= FLT_MIN * 2.0f ? __scalbnf (absy, scale) : 0.0f);
- }
- else if (absy > FLT_MAX / 2.0f)
- {
- scale = -1;
- absx = (absx >= FLT_MIN * 2.0f ? __scalbnf (absx, scale) : 0.0f);
- absy = __scalbnf (absy, scale);
}
else if (absx < FLT_MIN && absy < FLT_MIN)
{
@@ -66,9 +66,29 @@
absy = __scalbnf (absy, scale);
}
- d = __ieee754_hypotf (absx, absy);
+ if (absx == 1.0f && scale == 0)
+ {
+ float absy2 = absy * absy;
+ if (absy2 <= FLT_MIN * 2.0f * (float) M_LN10)
+ {
+#if __FLT_EVAL_METHOD__ == 0
+ __real__ result
+ = (absy2 / 2.0f - absy2 * absy2 / 4.0f) * (float) M_LOG10E;
+#else
+ volatile float force_underflow = absy2 * absy2 / 4.0f;
+ __real__ result
+ = (absy2 / 2.0f - force_underflow) * (float) M_LOG10E;
+#endif
+ }
+ else
+ __real__ result = __log1pf (absy2) * ((float) M_LOG10E / 2.0f);
+ }
+ else
+ {
+ float d = __ieee754_hypotf (absx, absy);
+ __real__ result = __ieee754_log10f (d) - scale * M_LOG10_2f;
+ }
- __real__ result = __ieee754_log10f (d) - scale * M_LOG10_2f;
__imag__ result = M_LOG10E * __ieee754_atan2f (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/math/s_clog10l.c
==============================================================================
--- fsf/trunk/libc/math/s_clog10l.c (original)
+++ fsf/trunk/libc/math/s_clog10l.c Fri Jul 27 00:01:49 2012
@@ -44,20 +44,20 @@
{
/* Neither real nor imaginary part is NaN. */
long double absx = fabsl (__real__ x), absy = fabsl (__imag__ x);
- long double d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ long double t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > LDBL_MAX / 2.0L)
{
scale = -1;
absx = __scalbnl (absx, scale);
absy = (absy >= LDBL_MIN * 2.0L ? __scalbnl (absy, scale) : 0.0L);
- }
- else if (absy > LDBL_MAX / 2.0L)
- {
- scale = -1;
- absx = (absx >= LDBL_MIN * 2.0L ? __scalbnl (absx, scale) : 0.0L);
- absy = __scalbnl (absy, scale);
}
else if (absx < LDBL_MIN && absy < LDBL_MIN)
{
@@ -66,9 +66,21 @@
absy = __scalbnl (absy, scale);
}
- d = __ieee754_hypotl (absx, absy);
+ if (absx == 1.0L && scale == 0)
+ {
+ long double absy2 = absy * absy;
+ if (absy2 <= LDBL_MIN * 2.0L * M_LN10l)
+ __real__ result
+ = (absy2 / 2.0L - absy2 * absy2 / 4.0L) * M_LOG10El;
+ else
+ __real__ result = __log1pl (absy2) * (M_LOG10El / 2.0L);
+ }
+ else
+ {
+ long double d = __ieee754_hypotl (absx, absy);
+ __real__ result = __ieee754_log10l (d) - scale * M_LOG10_2l;
+ }
- __real__ result = __ieee754_log10l (d) - scale * M_LOG10_2l;
__imag__ result = M_LOG10El * __ieee754_atan2l (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/math/s_clogf.c
==============================================================================
--- fsf/trunk/libc/math/s_clogf.c (original)
+++ fsf/trunk/libc/math/s_clogf.c Fri Jul 27 00:01:49 2012
@@ -41,20 +41,20 @@
{
/* Neither real nor imaginary part is NaN. */
float absx = fabsf (__real__ x), absy = fabsf (__imag__ x);
- float d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ float t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > FLT_MAX / 2.0f)
{
scale = -1;
absx = __scalbnf (absx, scale);
absy = (absy >= FLT_MIN * 2.0f ? __scalbnf (absy, scale) : 0.0f);
- }
- else if (absy > FLT_MAX / 2.0f)
- {
- scale = -1;
- absx = (absx >= FLT_MIN * 2.0f ? __scalbnf (absx, scale) : 0.0f);
- absy = __scalbnf (absy, scale);
}
else if (absx < FLT_MIN && absy < FLT_MIN)
{
@@ -63,9 +63,27 @@
absy = __scalbnf (absy, scale);
}
- d = __ieee754_hypotf (absx, absy);
+ if (absx == 1.0f && scale == 0)
+ {
+ float absy2 = absy * absy;
+ if (absy2 <= FLT_MIN * 2.0f)
+ {
+#if __FLT_EVAL_METHOD__ == 0
+ __real__ result = absy2 / 2.0f - absy2 * absy2 / 4.0f;
+#else
+ volatile float force_underflow = absy2 * absy2 / 4.0f;
+ __real__ result = absy2 / 2.0f - force_underflow;
+#endif
+ }
+ else
+ __real__ result = __log1pf (absy2) / 2.0f;
+ }
+ else
+ {
+ float d = __ieee754_hypotf (absx, absy);
+ __real__ result = __ieee754_logf (d) - scale * (float) M_LN2;
+ }
- __real__ result = __ieee754_logf (d) - scale * (float) M_LN2;
__imag__ result = __ieee754_atan2f (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/math/s_clogl.c
==============================================================================
--- fsf/trunk/libc/math/s_clogl.c (original)
+++ fsf/trunk/libc/math/s_clogl.c Fri Jul 27 00:01:49 2012
@@ -41,20 +41,20 @@
{
/* Neither real nor imaginary part is NaN. */
long double absx = fabsl (__real__ x), absy = fabsl (__imag__ x);
- long double d;
int scale = 0;
+
+ if (absx < absy)
+ {
+ long double t = absx;
+ absx = absy;
+ absy = t;
+ }
if (absx > LDBL_MAX / 2.0L)
{
scale = -1;
absx = __scalbnl (absx, scale);
absy = (absy >= LDBL_MIN * 2.0L ? __scalbnl (absy, scale) : 0.0L);
- }
- else if (absy > LDBL_MAX / 2.0L)
- {
- scale = -1;
- absx = (absx >= LDBL_MIN * 2.0L ? __scalbnl (absx, scale) : 0.0L);
- absy = __scalbnl (absy, scale);
}
else if (absx < LDBL_MIN && absy < LDBL_MIN)
{
@@ -63,9 +63,20 @@
absy = __scalbnl (absy, scale);
}
- d = __ieee754_hypotl (absx, absy);
+ if (absx == 1.0L && scale == 0)
+ {
+ long double absy2 = absy * absy;
+ if (absy2 <= LDBL_MIN * 2.0L)
+ __real__ result = absy2 / 2.0L - absy2 * absy2 / 4.0L;
+ else
+ __real__ result = __log1pl (absy2) / 2.0L;
+ }
+ else
+ {
+ long double d = __ieee754_hypotl (absx, absy);
+ __real__ result = __ieee754_logl (d) - scale * M_LN2l;
+ }
- __real__ result = __ieee754_logl (d) - scale * M_LN2l;
__imag__ result = __ieee754_atan2l (__imag__ x, __real__ x);
}
else
Modified: fsf/trunk/libc/ports/ChangeLog.alpha
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.alpha (original)
+++ fsf/trunk/libc/ports/ChangeLog.alpha Fri Jul 27 00:01:49 2012
@@ -1,3 +1,13 @@
+2012-07-26 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/alpha/tst-audit.h (int_retval): Define.
+
+2012-07-26 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (siginfo_t): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new macro.
+
2012-07-25 Florian Weimer <fweimer@xxxxxxxxxx>
* sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist: Add
Modified: fsf/trunk/libc/ports/ChangeLog.hppa
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.hppa (original)
+++ fsf/trunk/libc/ports/ChangeLog.hppa Fri Jul 27 00:01:49 2012
@@ -1,3 +1,8 @@
+2012-07-26 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/hppa/sys/epoll.h (EPOLLWAKEUP): Add new
+ value.
+
2012-05-19 Carlos O'Donell <carlos@xxxxxxxxxxxxxxxx>
* sysdeps/hppa/add_n.s: Rename this...
Modified: fsf/trunk/libc/ports/ChangeLog.ia64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.ia64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.ia64 Fri Jul 27 00:01:49 2012
@@ -1,3 +1,10 @@
+2012-07-26 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (__ptrace_eventcodes):
+ Add new value PTRACE_EVENT_SECCOMP from Linux 3.5.
+ (__ptrace_setoptions): Add new value PTRACE_O_TRACESECCOMP, adjust
+ PTRACE_O_MASK.
+
2012-07-25 Florian Weimer <fweimer@xxxxxxxxxx>
* sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist: Add
Modified: fsf/trunk/libc/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.m68k (original)
+++ fsf/trunk/libc/ports/ChangeLog.m68k Fri Jul 27 00:01:49 2012
@@ -1,3 +1,7 @@
+2012-07-26 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
+
+ * sysdeps/m68k/m680x0/fpu/libm-test-ulps: Update.
+
2012-07-25 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* sysdeps/unix/sysv/linux/m68k/kernel-features.h
Modified: fsf/trunk/libc/ports/ChangeLog.tile
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.tile (original)
+++ fsf/trunk/libc/ports/ChangeLog.tile Fri Jul 27 00:01:49 2012
@@ -1,3 +1,14 @@
+2012-07-26 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/tile/sys/ptrace.h (__ptrace_eventcodes):
+ Add new value PTRACE_EVENT_SECCOMP from Linux 3.5.
+ (__ptrace_setoptions): Add new value PTRACE_O_TRACESECCOMP, adjust
+ PTRACE_O_MASK.
+
+ * sysdeps/unix/sysv/linux/tile/bits/siginfo.h (siginfo_t): Add
+ _sigsys.
+ (si_call_addr, si_syscall, si_arch): Define new macro.
+
2012-07-25 Florian Weimer <fweimer@xxxxxxxxxx>
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Modified: fsf/trunk/libc/ports/sysdeps/alpha/tst-audit.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/alpha/tst-audit.h (original)
+++ fsf/trunk/libc/ports/sysdeps/alpha/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -21,3 +21,4 @@
#define pltexit la_alpha_gnu_pltexit
#define La_regs La_alpha_regs
#define La_retval La_alpha_retval
+#define int_retval lrv_r0
Modified: fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps Fri Jul 27 00:01:49 2012
@@ -619,6 +619,9 @@
Test "Imaginary part of: clog (0x1.fp+16383 + 0x1p+16383 i) == 11356.60974243783798653123798337822335902 + 0.4764674194737066993385333770295162295856 i":
ildouble: 1
ldouble: 1
+Test "Real part of: clog (1.0 + 0x1.234566p-10 i) == 6.172834701221959432440126967147726538097e-7 + 1.111110564353742042376451655136933182201e-3 i":
+float: 1
+ifloat: 1
# clog10
Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i":
@@ -627,6 +630,12 @@
Test "Imaginary part of: clog10 (-0 - inf i) == inf - pi/2*log10(e) i":
float: 1
ifloat: 1
+Test "Imaginary part of: clog10 (-0x1.234566p-40 - 1.0 i) == 2.325249110681915353442924915876654139373e-25 - 6.821881769213700828789403802671540158935e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (-1.0 + 0x1.234566p-20 i) == 2.556638434669064077889576526006849923281e-13 + 1.364375882602207106407956770293808181427 i":
+double: 1
+idouble: 1
Test "Real part of: clog10 (-2 - 3 i) == 0.556971676153418384603252578971164214 - 0.937554462986374708541507952140189646 i":
ildouble: 1
ldouble: 1
@@ -669,7 +678,16 @@
idouble: 1
ildouble: 2
ldouble: 2
+Test "Real part of: clog10 (0x1.234566p-30 + 1.0 i) == 2.438200411482400072282924063740535840474e-19 + 6.821881764607257184291586401763604544928e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1.234566p-50 + 1.0 i) == 2.217530356103816369479108963807448194409e-31 + 6.821881769209202348667823902864283966959e-1 i":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: clog10 (0x1p-16440 + 0x1p-16441 i) == -4948.884673709346821106688037612752099609 + 0.2013595981366865710389502301937289472543 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (1.0 + 0x1.234566p-10 i) == 2.680828048441605163181684680300513080769e-7 + 4.825491868832381486767558728169977751564e-4 i":
ildouble: 1
ldouble: 1
Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i":
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -97,6 +97,14 @@
int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t;
@@ -115,6 +123,9 @@
# define si_addr _sifields._sigfault.si_addr
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h Fri Jul 27 00:01:49 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2009, 2012 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -64,6 +64,8 @@
#define EPOLLHUP EPOLLHUP
EPOLLRDHUP = 0x2000,
#define EPOLLRDHUP EPOLLRDHUP
+ EPOLLWAKEUP = 1u << 29,
+#define EPOLLWAKEUP EPOLLWAKEUP
EPOLLONESHOT = 1u << 30,
#define EPOLLONESHOT EPOLLONESHOT
EPOLLET = 1u << 31
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* `ptrace' debugger support interface. Linux/ia64 version.
- Copyright (C) 2001, 2006, 2007, 2011 Free Software Foundation, Inc.
+ Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -154,7 +154,8 @@
};
/* Options set using PTRACE_SETOPTIONS. */
-enum __ptrace_setoptions {
+enum __ptrace_setoptions
+{
PTRACE_O_TRACESYSGOOD = 0x00000001,
PTRACE_O_TRACEFORK = 0x00000002,
PTRACE_O_TRACEVFORK = 0x00000004,
@@ -162,17 +163,20 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
-enum __ptrace_eventcodes {
+enum __ptrace_eventcodes
+{
PTRACE_EVENT_FORK = 1,
PTRACE_EVENT_VFORK = 2,
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRACE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -104,6 +104,14 @@
long int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t;
@@ -123,6 +131,9 @@
# define si_trapno _sifields._sigfault.si_trapno
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2011-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Chris Metcalf <cmetcalf@xxxxxxxxxx>, 2011.
@@ -107,7 +107,8 @@
/* Options set using PTRACE_SETOPTIONS. */
-enum __ptrace_setoptions {
+enum __ptrace_setoptions
+{
PTRACE_O_TRACESYSGOOD = 0x00000001,
PTRACE_O_TRACEFORK = 0x00000002,
PTRACE_O_TRACEVFORK = 0x00000004,
@@ -115,17 +116,20 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
-enum __ptrace_eventcodes {
+enum __ptrace_eventcodes
+{
PTRACE_EVENT_FORK = 1,
PTRACE_EVENT_VFORK = 2,
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRACE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
Modified: fsf/trunk/libc/sunrpc/rpc_hout.c
==============================================================================
--- fsf/trunk/libc/sunrpc/rpc_hout.c (original)
+++ fsf/trunk/libc/sunrpc/rpc_hout.c Fri Jul 27 00:01:49 2012
@@ -579,7 +579,7 @@
break;
}
}
- f_print (fout, separator);
+ f_print (fout, "%s", separator);
}
static int
Modified: fsf/trunk/libc/sunrpc/rpc_main.c
==============================================================================
--- fsf/trunk/libc/sunrpc/rpc_main.c (original)
+++ fsf/trunk/libc/sunrpc/rpc_main.c Fri Jul 27 00:01:49 2012
@@ -643,7 +643,7 @@
}
else if (tblflag)
{
- fprintf (fout, rpcgen_table_dcl);
+ fprintf (fout, "%s", rpcgen_table_dcl);
}
if (Cflag)
Modified: fsf/trunk/libc/sunrpc/rpc_svcout.c
==============================================================================
--- fsf/trunk/libc/sunrpc/rpc_svcout.c (original)
+++ fsf/trunk/libc/sunrpc/rpc_svcout.c Fri Jul 27 00:01:49 2012
@@ -353,7 +353,7 @@
f_print (fout, " (");
/* arg name */
if (proc->arg_num > 1)
- f_print (fout, proc->args.argname);
+ f_print (fout, "%s", proc->args.argname);
else
ptype (proc->args.decls->decl.prefix,
proc->args.decls->decl.type, 0);
Modified: fsf/trunk/libc/sysdeps/generic/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/tst-audit.h (original)
+++ fsf/trunk/libc/sysdeps/generic/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
-/* Some machines have these macros defined in elf/tst-auditmod1.c directly.
- New machines can supply a tst-audit.h to define these macros used there.
+/* Machines can supply a tst-audit.h to define these macros used in
+ elf/tst-auditmod1.c.
# define pltenter la_CPU_gnu_pltenter
Modified: fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps Fri Jul 27 00:01:49 2012
@@ -818,6 +818,9 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Real part of: clog (0x1.234566p-30 + 1.0 i) == 5.614163921211322622623353961365728040115e-19 + 1.570796325735258575254858696548386439740 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: clog (0x1.fffffep+127 + 0x1.fffffep+127 i) == 89.06941264234832570836679262104313101776 + pi/4 i":
ildouble: 1
ldouble: 1
@@ -851,6 +854,9 @@
Test "Real part of: clog (0x1p-16445 - 0x1.fp+16383 i) == 11356.49165759582936919077408168801636572 - pi/2 i":
ildouble: 1
ldouble: 1
+Test "Real part of: clog (1.0 + 0x1.234566p-10 i) == 6.172834701221959432440126967147726538097e-7 + 1.111110564353742042376451655136933182201e-3 i":
+float: 1
+ifloat: 1
# clog10
Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i":
@@ -863,6 +869,9 @@
float: 1
idouble: 1
ifloat: 1
+Test "Imaginary part of: clog10 (-0x1.234566p-40 - 1.0 i) == 2.325249110681915353442924915876654139373e-25 - 6.821881769213700828789403802671540158935e-1 i":
+float: 1
+ifloat: 1
Test "Imaginary part of: clog10 (-0x1.fp+1023 + 0x1p-1074 i) == 308.2409272754311106024666378243768099991 + 1.364376353841841347485783625431355770210 i":
double: 1
idouble: 1
@@ -919,6 +928,9 @@
Test "Real part of: clog10 (-0x1p-16445 - 0x1.fp+16383 i) == 4932.061660674182269085496060792589701158 - 0.6821881769209206737428918127156778851051 i":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: clog10 (-1.0 + 0x1.234566p-20 i) == 2.556638434669064077889576526006849923281e-13 + 1.364375882602207106407956770293808181427 i":
+double: 1
+idouble: 1
Test "Imaginary part of: clog10 (-2 - 3 i) == 0.556971676153418384603252578971164214 - 0.937554462986374708541507952140189646 i":
double: 1
idouble: 1
@@ -974,6 +986,19 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: clog10 (0x1.234566p-30 + 1.0 i) == 2.438200411482400072282924063740535840474e-19 + 6.821881764607257184291586401763604544928e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1.234566p-50 + 1.0 i) == 2.217530356103816369479108963807448194409e-31 + 6.821881769209202348667823902864283966959e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1.234566p-60 + 1.0 i) == 2.114801746467415208319767917450504756866e-37 + 6.821881769209206733143018621078368211515e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "Real part of: clog10 (0x1.fffffep+127 + 0x1.fffffep+127 i) == 38.68235441693561449174780668781319348761 + pi/4*log10(e) i":
ildouble: 1
ldouble: 1
@@ -1051,6 +1076,38 @@
ildouble: 1
ldouble: 1
Test "Real part of: clog10 (0x1p-16445 - 0x1.fp+16383 i) == 4932.061660674182269085496060792589701158 - 0.6821881769209206737428918127156778851051 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1p-509 + 1.0 i) == 7.730698388614835910296270976605350994446e-308 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-510 + 1.0 i) == 1.932674597153708977574067744151337748612e-308 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-511 + 1.0 i) == 4.831686492884272443935169360378344371529e-309 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-61 + 1.0 i) == 4.084085680564517578238994467153626207224e-38 + 6.821881769209206735545466044044889962925e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1p-62 + 1.0 i) == 1.021021420141129394559748616788406551878e-38 + 6.821881769209206736487192085600834406988e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1p-63 + 1.0 i) == 2.552553550352823486399371541971016379740e-39 + 6.821881769209206736958055106378806629019e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Real part of: clog10 (0x1p-8190 + 1.0 i) == 2.920285685286322365786846845062520925172e-4932 + 6.821881769209206737428918127156778851051e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (1.0 + 0x1.234566p-10 i) == 2.680828048441605163181684680300513080769e-7 + 4.825491868832381486767558728169977751564e-4 i":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i":
Added: fsf/trunk/libc/sysdeps/i386/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/i386/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/i386/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. i386 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_i86_gnu_pltenter
+#define pltexit la_i86_gnu_pltexit
+#define La_regs La_i86_regs
+#define La_retval La_i86_retval
+#define int_retval lrv_eax
Added: fsf/trunk/libc/sysdeps/powerpc/powerpc32/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc32/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc32/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. PowerPC32 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_ppc32_gnu_pltenter
+#define pltexit la_ppc32_gnu_pltexit
+#define La_regs La_ppc32_regs
+#define La_retval La_ppc32_retval
+#define int_retval lrv_r3
Added: fsf/trunk/libc/sysdeps/powerpc/powerpc64/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/powerpc64/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/powerpc/powerpc64/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. PowerPC64 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_ppc64_gnu_pltenter
+#define pltexit la_ppc64_gnu_pltexit
+#define La_regs La_ppc64_regs
+#define La_retval La_ppc64_retval
+#define int_retval lrv_r3
Added: fsf/trunk/libc/sysdeps/s390/s390-32/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/s390/s390-32/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/s390/s390-32/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. S/390 32-bit version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_s390_32_gnu_pltenter
+#define pltexit la_s390_32_gnu_pltexit
+#define La_regs La_s390_32_regs
+#define La_retval La_s390_32_retval
+#define int_retval lrv_r2
Added: fsf/trunk/libc/sysdeps/s390/s390-64/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/s390/s390-64/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/s390/s390-64/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. S/390 64-bit version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_s390_64_gnu_pltenter
+#define pltexit la_s390_64_gnu_pltexit
+#define La_regs La_s390_64_regs
+#define La_retval La_s390_64_retval
+#define int_retval lrv_r2
Added: fsf/trunk/libc/sysdeps/sh/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/sh/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/sh/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. SH version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_sh_gnu_pltenter
+#define pltexit la_sh_gnu_pltexit
+#define La_regs La_sh_regs
+#define La_retval La_sh_retval
+#define int_retval lrv_r0
Added: fsf/trunk/libc/sysdeps/sparc/sparc32/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc32/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/sparc/sparc32/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. SPARC32 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_sparc32_gnu_pltenter
+#define pltexit la_sparc32_gnu_pltexit
+#define La_regs La_sparc32_regs
+#define La_retval La_sparc32_retval
+#define int_retval lrv_reg[0]
Added: fsf/trunk/libc/sysdeps/sparc/sparc64/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc64/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/sparc/sparc64/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,25 @@
+/* Definitions for testing PLT entry/exit auditing. SPARC64 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define pltenter la_sparc64_gnu_pltenter
+#define pltexit la_sparc64_gnu_pltexit
+#define La_regs La_sparc64_regs
+#define La_retval La_sparc64_retval
+#define int_retval lrv_reg[0]
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/siginfo.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* siginfo_t, sigevent and constants. Linux version.
- Copyright (C) 1997-2002, 2003, 2011, 2012 Free Software Foundation, Inc.
+ Copyright (C) 1997-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -103,6 +103,14 @@
long int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t;
@@ -121,6 +129,9 @@
# define si_addr _sifields._sigfault.si_addr
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* `ptrace' debugger support interface. Linux version.
- Copyright (C) 2001, 2006, 2007, 2011 Free Software Foundation, Inc.
+ Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -126,7 +126,8 @@
};
/* Options set using PTRACE_SETOPTIONS. */
-enum __ptrace_setoptions {
+enum __ptrace_setoptions
+{
PTRACE_O_TRACESYSGOOD = 0x00000001,
PTRACE_O_TRACEFORK = 0x00000002,
PTRACE_O_TRACEVFORK = 0x00000004,
@@ -134,17 +135,20 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
-enum __ptrace_eventcodes {
+enum __ptrace_eventcodes
+{
PTRACE_EVENT_FORK = 1,
PTRACE_EVENT_VFORK = 2,
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRACE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/bits/siginfo.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* siginfo_t, sigevent and constants. S/390 version.
- Copyright (C) 2001, 2002, 2003, 2009, 2011, 2012 Free Software Foundation, Inc.
+ Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -104,6 +104,14 @@
long int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t;
@@ -123,6 +131,9 @@
# define si_trapno _sifields._sigfault.si_trapno
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ptrace.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* `ptrace' debugger support interface. Linux version.
- Copyright (C) 2000, 2006, 2007, 2011 Free Software Foundation, Inc.
+ Copyright (C) 2000-2012 Free Software Foundation, Inc.
Contributed by Denis Joseph Barrow (djbarrow@xxxxxxxxxx).
This file is part of the GNU C Library.
@@ -165,7 +165,8 @@
};
/* Options set using PTRACE_SETOPTIONS. */
-enum __ptrace_setoptions {
+enum __ptrace_setoptions
+{
PTRACE_O_TRACESYSGOOD = 0x00000001,
PTRACE_O_TRACEFORK = 0x00000002,
PTRACE_O_TRACEVFORK = 0x00000004,
@@ -173,17 +174,20 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
-enum __ptrace_eventcodes {
+enum __ptrace_eventcodes
+{
PTRACE_EVENT_FORK = 1,
PTRACE_EVENT_VFORK = 2,
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRACE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
@@ -195,7 +199,7 @@
appear (those that are used for the particular request) as:
pid_t PID, void *ADDR, int DATA, void *ADDR2
after REQUEST. */
-extern long int ptrace (enum __ptrace_request __request, ...);
+extern long int ptrace (enum __ptrace_request __request, ...) __THROW;
__END_DECLS
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* siginfo_t, sigevent and constants. Linux/SPARC version.
- Copyright (C) 1997-2002, 2003, 2011, 2012 Free Software Foundation, Inc.
+ Copyright (C) 1997-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -104,6 +104,14 @@
int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t;
@@ -123,6 +131,9 @@
# define si_trapno _sifields._sigfault.si_trapno
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,6 +1,5 @@
/* `ptrace' debugger support interface. Linux/SPARC version.
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2006, 2007, 2011
- Free Software Foundation, Inc.
+ Copyright (C) 1996-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -210,7 +209,8 @@
};
/* Options set using PTRACE_SETOPTIONS. */
-enum __ptrace_setoptions {
+enum __ptrace_setoptions
+{
PTRACE_O_TRACESYSGOOD = 0x00000001,
PTRACE_O_TRACEFORK = 0x00000002,
PTRACE_O_TRACEVFORK = 0x00000004,
@@ -218,17 +218,20 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
-enum __ptrace_eventcodes {
+enum __ptrace_eventcodes
+{
PTRACE_EVENT_FORK = 1,
PTRACE_EVENT_VFORK = 2,
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRACE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/epoll.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/epoll.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/epoll.h Fri Jul 27 00:01:49 2012
@@ -61,6 +61,8 @@
#define EPOLLHUP EPOLLHUP
EPOLLRDHUP = 0x2000,
#define EPOLLRDHUP EPOLLRDHUP
+ EPOLLWAKEUP = 1u << 29,
+#define EPOLLWAKEUP EPOLLWAKEUP
EPOLLONESHOT = 1u << 30,
#define EPOLLONESHOT EPOLLONESHOT
EPOLLET = 1u << 31
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/ptrace.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/ptrace.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sys/ptrace.h Fri Jul 27 00:01:49 2012
@@ -1,5 +1,5 @@
/* `ptrace' debugger support interface. Linux version.
- Copyright (C) 1996-1999,2000,2006,2007,2011 Free Software Foundation, Inc.
+ Copyright (C) 1996-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -165,7 +165,8 @@
PTRACE_O_TRACEEXEC = 0x00000010,
PTRACE_O_TRACEVFORKDONE = 0x00000020,
PTRACE_O_TRACEEXIT = 0x00000040,
- PTRACE_O_MASK = 0x0000007f
+ PTRACE_O_TRACESECCOMP = 0x00000080,
+ PTRACE_O_MASK = 0x000000ff
};
/* Wait extended result codes for the above trace options. */
@@ -176,7 +177,8 @@
PTRACE_EVENT_CLONE = 3,
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
- PTRACE_EVENT_EXIT = 6
+ PTRACE_EVENT_EXIT = 6,
+ PTRAVE_EVENT_SECCOMP = 7
};
/* Perform process tracing functions. REQUEST is one of the values
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/siginfo.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/siginfo.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/siginfo.h Fri Jul 27 00:01:49 2012
@@ -115,6 +115,14 @@
long int si_band; /* Band event for SIGPOLL. */
int si_fd;
} _sigpoll;
+
+ /* SIGSYS. */
+ struct
+ {
+ void *_call_addr; /* Calling user insn. */
+ int _syscall; /* Triggering system call number. */
+ unsigned int _arch; /* AUDIT_ARCH_* of syscall. */
+ } _sigsys;
} _sifields;
} siginfo_t __SI_ALIGNMENT;
@@ -133,6 +141,9 @@
# define si_addr _sifields._sigfault.si_addr
# define si_band _sifields._sigpoll.si_band
# define si_fd _sifields._sigpoll.si_fd
+# define si_call_addr _sifields._sigsys._call_addr
+# define si_syscall _sifields._sigsys._syscall
+# define si_arch _sifields._sigsys._arch
/* Values for `si_code'. Positive values are reserved for kernel-generated
Modified: fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps Fri Jul 27 00:01:49 2012
@@ -729,6 +729,9 @@
ldouble: 1
# clog
+Test "Imaginary part of: clog (-0x1.234566p-40 - 1.0 i) == 5.354083939753840089583620652120903838944e-25 - 1.570796326795931422008642456283782656359 i":
+float: 1
+ifloat: 1
Test "Real part of: clog (-0x1.fp+127 + 0x1p-149 i) == 88.69109041335841930424871526389807508374 + pi i":
float: 1
ifloat: 1
@@ -823,6 +826,9 @@
Test "Real part of: clog (0x1p-16445 - 0x1.fp+16383 i) == 11356.49165759582936919077408168801636572 - pi/2 i":
ildouble: 1
ldouble: 1
+Test "Real part of: clog (1.0 + 0x1.234566p-10 i) == 6.172834701221959432440126967147726538097e-7 + 1.111110564353742042376451655136933182201e-3 i":
+float: 1
+ifloat: 1
# clog10
Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i":
@@ -887,6 +893,9 @@
Test "Real part of: clog10 (-0x1p-16445 - 0x1.fp+16383 i) == 4932.061660674182269085496060792589701158 - 0.6821881769209206737428918127156778851051 i":
ildouble: 1
ldouble: 1
+Test "Imaginary part of: clog10 (-1.0 + 0x1.234566p-20 i) == 2.556638434669064077889576526006849923281e-13 + 1.364375882602207106407956770293808181427 i":
+double: 1
+idouble: 1
Test "Imaginary part of: clog10 (-2 - 3 i) == 0.556971676153418384603252578971164214 - 0.937554462986374708541507952140189646 i":
double: 1
float: 5
@@ -944,6 +953,22 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Real part of: clog10 (0x1.234566p-30 + 1.0 i) == 2.438200411482400072282924063740535840474e-19 + 6.821881764607257184291586401763604544928e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1.234566p-30 + 1.0 i) == 2.438200411482400072282924063740535840474e-19 + 6.821881764607257184291586401763604544928e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1.234566p-50 + 1.0 i) == 2.217530356103816369479108963807448194409e-31 + 6.821881769209202348667823902864283966959e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1.234566p-60 + 1.0 i) == 2.114801746467415208319767917450504756866e-37 + 6.821881769209206733143018621078368211515e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "Real part of: clog10 (0x1.fffffep+127 + 0x1.fffffep+127 i) == 38.68235441693561449174780668781319348761 + pi/4*log10(e) i":
ildouble: 1
ldouble: 1
@@ -1027,6 +1052,38 @@
ildouble: 1
ldouble: 1
Test "Real part of: clog10 (0x1p-16445 - 0x1.fp+16383 i) == 4932.061660674182269085496060792589701158 - 0.6821881769209206737428918127156778851051 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (0x1p-509 + 1.0 i) == 7.730698388614835910296270976605350994446e-308 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-510 + 1.0 i) == 1.932674597153708977574067744151337748612e-308 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-511 + 1.0 i) == 4.831686492884272443935169360378344371529e-309 + 6.821881769209206737428918127156778851051e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: clog10 (0x1p-61 + 1.0 i) == 4.084085680564517578238994467153626207224e-38 + 6.821881769209206735545466044044889962925e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1p-62 + 1.0 i) == 1.021021420141129394559748616788406551878e-38 + 6.821881769209206736487192085600834406988e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: clog10 (0x1p-63 + 1.0 i) == 2.552553550352823486399371541971016379740e-39 + 6.821881769209206736958055106378806629019e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Real part of: clog10 (0x1p-8190 + 1.0 i) == 2.920285685286322365786846845062520925172e-4932 + 6.821881769209206737428918127156778851051e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: clog10 (1.0 + 0x1.234566p-10 i) == 2.680828048441605163181684680300513080769e-7 + 4.825491868832381486767558728169977751564e-4 i":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i":
Added: fsf/trunk/libc/sysdeps/x86_64/tst-audit.h
==============================================================================
--- fsf/trunk/libc/sysdeps/x86_64/tst-audit.h (added)
+++ fsf/trunk/libc/sysdeps/x86_64/tst-audit.h Fri Jul 27 00:01:49 2012
@@ -1,0 +1,32 @@
+/* Definitions for testing PLT entry/exit auditing. x86_64 version.
+
+ Copyright (C) 2012 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef __ILP32__
+# define pltenter la_x86_64_gnu_pltenter
+# define pltexit la_x86_64_gnu_pltexit
+# define La_regs La_x86_64_regs
+# define La_retval La_x86_64_retval
+#else
+# define pltenter la_x32_gnu_pltenter
+# define pltexit la_x32_gnu_pltexit
+# define La_regs La_x32_regs
+# define La_retval La_x32_retval
+#endif
+#define int_retval lrv_rax
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits