[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r22179 - in /fsf/trunk/libc: ./ elf/ include/ localedata/ math/bits/ misc/ ports/ ports/sysdeps/aarch64/bits/ ports/sysdeps/...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r22179 - in /fsf/trunk/libc: ./ elf/ include/ localedata/ math/bits/ misc/ ports/ ports/sysdeps/aarch64/bits/ ports/sysdeps/...
- From: eglibc@xxxxxxxxxx
- Date: Fri, 11 Jan 2013 00:01:42 -0000
Author: eglibc
Date: Fri Jan 11 00:01:41 2013
New Revision: 22179
Log:
Import glibc-mainline for 2013-01-11
Added:
fsf/trunk/libc/localedata/bug-setlocale1-static.c
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed
fsf/trunk/libc/posix/tst-exec-static.c
fsf/trunk/libc/posix/tst-spawn-static.c
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/NEWS
fsf/trunk/libc/elf/elf.h
fsf/trunk/libc/elf/link.h
fsf/trunk/libc/include/features.h
fsf/trunk/libc/localedata/ChangeLog
fsf/trunk/libc/localedata/Makefile
fsf/trunk/libc/localedata/bug-setlocale1.c
fsf/trunk/libc/math/bits/mathcalls.h
fsf/trunk/libc/misc/error.c
fsf/trunk/libc/ports/ChangeLog.aarch64
fsf/trunk/libc/ports/ChangeLog.hppa
fsf/trunk/libc/ports/ChangeLog.m68k
fsf/trunk/libc/ports/ChangeLog.mips
fsf/trunk/libc/ports/ChangeLog.tile
fsf/trunk/libc/ports/sysdeps/aarch64/bits/setjmp.h
fsf/trunk/libc/ports/sysdeps/hppa/fpu/fpu_control.h
fsf/trunk/libc/ports/sysdeps/m68k/bits/byteswap.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h
fsf/trunk/libc/posix/Makefile
fsf/trunk/libc/posix/tst-exec.c
fsf/trunk/libc/posix/tst-spawn.c
fsf/trunk/libc/stdlib/stdlib.h
fsf/trunk/libc/string/string.h
fsf/trunk/libc/sysdeps/generic/inttypes.h
fsf/trunk/libc/sysdeps/gnu/netinet/tcp.h
fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.c
fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.h
fsf/trunk/libc/sysdeps/s390/bits/byteswap.h
fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/Versions
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/init-first.c
fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/ipc.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ucontext.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/procfs.h
fsf/trunk/libc/sysdeps/x86/bits/setjmp.h
fsf/trunk/libc/sysdeps/x86/fpu/bits/mathinline.h
fsf/trunk/libc/wcsmbs/wchar.h
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Jan 11 00:01:41 2013
@@ -1,3 +1,134 @@
+2013-01-10 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * elf/elf.h (DT_SPARC_REGISTER, DT_SPARC_NUM): Fix whitespace.
+ (EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT): Likewise.
+ (EF_MIPS_64BIT_WHIRL, EF_MIPS_ABI2, EF_MIPS_ABI_ON32): Likewise.
+ (EF_MIPS_ARCH, EF_MIPS_ARCH_1, EF_MIPS_ARCH_2): Likewise.
+ (EF_MIPS_ARCH_3, EF_MIPS_ARCH_4, EF_MIPS_ARCH_5): Likewise.
+ (EF_MIPS_ARCH_32, EF_MIPS_ARCH_64): Likewise.
+ (E_MIPS_ARCH_1): Define in terms of EF_MIPS_ARCH_* counterpart.
+ (E_MIPS_ARCH_2, E_MIPS_ARCH_3, E_MIPS_ARCH_4, E_MIPS_ARCH_5): Likewise.
+ (E_MIPS_ARCH_32, E_MIPS_ARCH_64): Likewise.
+ (SHN_MIPS_ACOMMON, SHN_MIPS_TEXT, SHN_MIPS_DATA): Fix whitespace.
+ (SHN_MIPS_SCOMMON, SHN_MIPS_SUNDEFINED): Likewise.
+ (SHT_MIPS_LIBLIST, SHT_MIPS_MSYM, SHT_MIPS_CONFLICT): Likewise.
+ (SHT_MIPS_GPTAB, SHT_MIPS_UCODE, SHT_MIPS_DEBUG): Likewise.
+ (SHT_MIPS_REGINFO, SHT_MIPS_PACKAGE, SHT_MIPS_PACKSYM): Likewise.
+ (SHT_MIPS_RELD, SHT_MIPS_IFACE, SHT_MIPS_CONTENT): Likewise.
+ (SHT_MIPS_OPTIONS, SHT_MIPS_SHDR, SHT_MIPS_FDESC): Likewise.
+ (SHT_MIPS_EXTSYM, SHT_MIPS_DENSE, SHT_MIPS_PDESC): Likewise.
+ (SHT_MIPS_LOCSYM, SHT_MIPS_AUXSYM, SHT_MIPS_OPTSYM): Likewise.
+ (SHT_MIPS_LOCSTR, SHT_MIPS_LINE, SHT_MIPS_RFDESC): Likewise.
+ (SHT_MIPS_DELTASYM, SHT_MIPS_DELTAINST, SHT_MIPS_DELTACLASS): Likewise.
+ (SHT_MIPS_DELTADECL, SHT_MIPS_SYMBOL_LIB, SHT_MIPS_EVENTS): Likewise.
+ (SHT_MIPS_TRANSLATE, SHT_MIPS_PIXIE, SHT_MIPS_XLATE): Likewise.
+ (SHT_MIPS_XLATE_DEBUG, SHT_MIPS_WHIRL, SHT_MIPS_EH_REGION): Likewise.
+ (SHT_MIPS_XLATE_OLD, SHT_MIPS_PDR_EXCEPTION): Likewise.
+ (SHF_MIPS_GPREL, SHF_MIPS_MERGE, SHF_MIPS_ADDR): Likewise.
+ (SHF_MIPS_STRINGS, SHF_MIPS_NOSTRIP, SHF_MIPS_LOCAL): Likewise.
+ (SHF_MIPS_NAMES, SHF_MIPS_NODUPE): Likewise.
+
+2013-01-10 David S. Miller <davem@xxxxxxxxxxxxx>
+
+ * sysdeps/sparc/fpu/libm-test-ulps: Update.
+
+2013-01-10 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ * posix/Makefile (tests-static): New variable.
+ (tests): Add $(tests-static).
+ (tst-exec-static-ARGS): New variable.
+ (tst-spawn-static-ARGS): Likewise.
+ * posix/tst-exec-static.c: New file.
+ * posix/tst-spawn-static.c: Likewise.
+ * posix/tst-exec.c: Support run directly.
+ * posix/tst-spawn.c: Likewise.
+
+2013-01-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * elf/link.h (struct dl_phdr_info): Use __extension__ with long
+ long.
+ * math/bits/mathcalls.h (llrint): Likewise.
+ (llround): Likewise.
+ * stdlib/stdlib.h (struct drand48_data): Likewise.
+ * sysdeps/generic/inttypes.h (imaxdiv_t): Likewise.
+ * sysdeps/s390/bits/byteswap.h (__bswap_64): Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/ipc.h (struct ipc_perm):
+ Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sys/ucontext.h (struct fpu):
+ Likewise.
+ * sysdeps/unix/sysv/linux/x86/sys/procfs.h [__x86_64__]
+ (elf_greg_t): Likewise.
+ * sysdeps/x86/bits/setjmp.h [__x86_64__ && __WORDSIZE != 64]
+ (__jmp_buf): Likewise.
+ * sysdeps/x86/fpu/bits/mathinline.h (llrintf): Likewise, for all
+ definitions.
+ (llrint): Likewise, for all definitions.
+ (llrintl): Likewise.
+
+ * string/string.h [__USE_BSD && __USE_GNU && __GNUC__] (ffsll):
+ Remove [__GNUC__] condition.
+ * wcsmbs/wchar.h [__USE_ISOC99 || (__GNUC__ && __USE_GNU)]: Change
+ condition to just [__USE_ISOC99].
+ [__GNUC__ && __USE_GNU]: Change condition to just [__USE_GNU].
+
+2013-01-10 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ [BZ #14200]
+ * sysdeps/unix/sysv/linux/x86/bits/environments.h
+ (_POSIX_V7_ILP32_OFF32): Defined as 1 only if __x86_64__ isn't
+ defined.
+ (_POSIX_V6_ILP32_OFF32): Likewise.
+ (_XBS5_ILP32_OFF32): Likewise.
+ (__ILP32_OFFBIG_CFLAGS): Defined as "-mx32" for x32.
+ (__ILP32_OFFBIG_LDFLAGS): Likewise.
+
+2013-01-10 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ * sysdeps/ieee754/dbl-64/mpexp.c: Fix formatting.
+
+ * sysdeps/ieee754/dbl-64/mpexp.c (__mpexp): New array of
+ doubles __mpexp_twomm1. Adjust usage.
+ * sysdeps/ieee754/dbl-64/mpexp.h (__mpexp_twomm1):
+ Remove.
+
+2013-01-10 Andreas Schwab <schwab@xxxxxxx>
+
+ [BZ #14964]
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (FALLOC_FL_KEEP_SIZE)
+ (FALLOC_FL_PUNCH_HOLE) [__USE_GNU]: New macros.
+
+2013-01-09 David S. Miller <davem@xxxxxxxxxxxxx>
+
+ [BZ #15003]
+ * sysdeps/gnu/netinet/tcp.h (TCP_COOKIE_TRANSACTIONS,
+ TCP_THIN_LINEAR_TIMEOUTS, TCP_THIN_DUPACK, TCP_USER_TIMEOUT,
+ TCP_REPAIR, TCP_REPAIR_QUEUE, TCP_QUEUE_SEQ, TCP_REPAIR_OPTIONS,
+ TCP_FASTOPEN): Define.
+ (tcp_repair_opt): New structure.
+ (TCP_NO_QUEUE, TCP_RECV_QUEUE, TCP_SEND_QUEUE, TCP_QUEUES_NR): New
+ enum values.
+ (TCP_COOKIE_MIN, TCP_COOKIE_MAX, TCP_COOKIE_PAIR_SIZE,
+ TCP_COOKIE_IN_ALWAYS, TCP_COOKIE_OUT_NEVER, TCP_S_DATA_IN,
+ TCP_S_DATA_OUT, TCP_MSS_DEFAULT, TCP_MSS_DESIRED): Define.
+ (tcp_cookie_transactions): New structure.
+
+2013-01-09 Anton Blanchard <anton@xxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c: New file.
+ * sysdeps/unix/sysv/linux/powerpc/Versions: Add __vdso_getcpu.
+ * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/init-first.c: Likewise.
+
+2013-01-09 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * include/features.h (__USE_ANSI): Remove.
+
+2013-01-09 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * posix/Makefile (others): Depend on $(objpfx)getconf.speclist.
+
+ * misc/error.c (error_tail: ALLOCA_LIMIT): Remove unused macro.
+
2013-01-09 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
* sysdeps/s390/fpu/libm-test-ulps: Update.
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Fri Jan 11 00:01:41 2013
@@ -9,7 +9,7 @@
* The following bugs are resolved with this release:
- 13951, 14317, 14981, 14982, 14985, 14994, 14996.
+ 13951, 14200, 14317, 14964, 14981, 14982, 14985, 14994, 14996, 15003.
Version 2.17
Modified: fsf/trunk/libc/elf/elf.h
==============================================================================
--- fsf/trunk/libc/elf/elf.h (original)
+++ fsf/trunk/libc/elf/elf.h Fri Jan 11 00:01:41 2013
@@ -1365,102 +1365,102 @@
/* For Sparc64, legal values for d_tag of Elf64_Dyn. */
-#define DT_SPARC_REGISTER 0x70000001
-#define DT_SPARC_NUM 2
+#define DT_SPARC_REGISTER 0x70000001
+#define DT_SPARC_NUM 2
/* MIPS R3000 specific definitions. */
/* Legal values for e_flags field of Elf32_Ehdr. */
-#define EF_MIPS_NOREORDER 1 /* A .noreorder directive was used */
-#define EF_MIPS_PIC 2 /* Contains PIC code */
-#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence */
-#define EF_MIPS_XGOT 8
-#define EF_MIPS_64BIT_WHIRL 16
-#define EF_MIPS_ABI2 32
-#define EF_MIPS_ABI_ON32 64
-#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level */
+#define EF_MIPS_NOREORDER 1 /* A .noreorder directive was used. */
+#define EF_MIPS_PIC 2 /* Contains PIC code. */
+#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence. */
+#define EF_MIPS_XGOT 8
+#define EF_MIPS_64BIT_WHIRL 16
+#define EF_MIPS_ABI2 32
+#define EF_MIPS_ABI_ON32 64
+#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */
/* Legal values for MIPS architecture level. */
-#define EF_MIPS_ARCH_1 0x00000000 /* -mips1 code. */
-#define EF_MIPS_ARCH_2 0x10000000 /* -mips2 code. */
-#define EF_MIPS_ARCH_3 0x20000000 /* -mips3 code. */
-#define EF_MIPS_ARCH_4 0x30000000 /* -mips4 code. */
-#define EF_MIPS_ARCH_5 0x40000000 /* -mips5 code. */
-#define EF_MIPS_ARCH_32 0x60000000 /* MIPS32 code. */
-#define EF_MIPS_ARCH_64 0x70000000 /* MIPS64 code. */
-
-/* The following are non-official names and should not be used. */
-
-#define E_MIPS_ARCH_1 0x00000000 /* -mips1 code. */
-#define E_MIPS_ARCH_2 0x10000000 /* -mips2 code. */
-#define E_MIPS_ARCH_3 0x20000000 /* -mips3 code. */
-#define E_MIPS_ARCH_4 0x30000000 /* -mips4 code. */
-#define E_MIPS_ARCH_5 0x40000000 /* -mips5 code. */
-#define E_MIPS_ARCH_32 0x60000000 /* MIPS32 code. */
-#define E_MIPS_ARCH_64 0x70000000 /* MIPS64 code. */
+#define EF_MIPS_ARCH_1 0x00000000 /* -mips1 code. */
+#define EF_MIPS_ARCH_2 0x10000000 /* -mips2 code. */
+#define EF_MIPS_ARCH_3 0x20000000 /* -mips3 code. */
+#define EF_MIPS_ARCH_4 0x30000000 /* -mips4 code. */
+#define EF_MIPS_ARCH_5 0x40000000 /* -mips5 code. */
+#define EF_MIPS_ARCH_32 0x60000000 /* MIPS32 code. */
+#define EF_MIPS_ARCH_64 0x70000000 /* MIPS64 code. */
+
+/* The following are unofficial names and should not be used. */
+
+#define E_MIPS_ARCH_1 EF_MIPS_ARCH_1
+#define E_MIPS_ARCH_2 EF_MIPS_ARCH_2
+#define E_MIPS_ARCH_3 EF_MIPS_ARCH_3
+#define E_MIPS_ARCH_4 EF_MIPS_ARCH_4
+#define E_MIPS_ARCH_5 EF_MIPS_ARCH_5
+#define E_MIPS_ARCH_32 EF_MIPS_ARCH_32
+#define E_MIPS_ARCH_64 EF_MIPS_ARCH_64
/* Special section indices. */
-#define SHN_MIPS_ACOMMON 0xff00 /* Allocated common symbols */
-#define SHN_MIPS_TEXT 0xff01 /* Allocated test symbols. */
-#define SHN_MIPS_DATA 0xff02 /* Allocated data symbols. */
-#define SHN_MIPS_SCOMMON 0xff03 /* Small common symbols */
-#define SHN_MIPS_SUNDEFINED 0xff04 /* Small undefined symbols */
+#define SHN_MIPS_ACOMMON 0xff00 /* Allocated common symbols. */
+#define SHN_MIPS_TEXT 0xff01 /* Allocated test symbols. */
+#define SHN_MIPS_DATA 0xff02 /* Allocated data symbols. */
+#define SHN_MIPS_SCOMMON 0xff03 /* Small common symbols. */
+#define SHN_MIPS_SUNDEFINED 0xff04 /* Small undefined symbols. */
/* Legal values for sh_type field of Elf32_Shdr. */
-#define SHT_MIPS_LIBLIST 0x70000000 /* Shared objects used in link */
-#define SHT_MIPS_MSYM 0x70000001
-#define SHT_MIPS_CONFLICT 0x70000002 /* Conflicting symbols */
-#define SHT_MIPS_GPTAB 0x70000003 /* Global data area sizes */
-#define SHT_MIPS_UCODE 0x70000004 /* Reserved for SGI/MIPS compilers */
-#define SHT_MIPS_DEBUG 0x70000005 /* MIPS ECOFF debugging information*/
-#define SHT_MIPS_REGINFO 0x70000006 /* Register usage information */
-#define SHT_MIPS_PACKAGE 0x70000007
-#define SHT_MIPS_PACKSYM 0x70000008
-#define SHT_MIPS_RELD 0x70000009
-#define SHT_MIPS_IFACE 0x7000000b
-#define SHT_MIPS_CONTENT 0x7000000c
-#define SHT_MIPS_OPTIONS 0x7000000d /* Miscellaneous options. */
-#define SHT_MIPS_SHDR 0x70000010
-#define SHT_MIPS_FDESC 0x70000011
-#define SHT_MIPS_EXTSYM 0x70000012
-#define SHT_MIPS_DENSE 0x70000013
-#define SHT_MIPS_PDESC 0x70000014
-#define SHT_MIPS_LOCSYM 0x70000015
-#define SHT_MIPS_AUXSYM 0x70000016
-#define SHT_MIPS_OPTSYM 0x70000017
-#define SHT_MIPS_LOCSTR 0x70000018
-#define SHT_MIPS_LINE 0x70000019
-#define SHT_MIPS_RFDESC 0x7000001a
-#define SHT_MIPS_DELTASYM 0x7000001b
-#define SHT_MIPS_DELTAINST 0x7000001c
-#define SHT_MIPS_DELTACLASS 0x7000001d
-#define SHT_MIPS_DWARF 0x7000001e /* DWARF debugging information. */
-#define SHT_MIPS_DELTADECL 0x7000001f
-#define SHT_MIPS_SYMBOL_LIB 0x70000020
-#define SHT_MIPS_EVENTS 0x70000021 /* Event section. */
-#define SHT_MIPS_TRANSLATE 0x70000022
-#define SHT_MIPS_PIXIE 0x70000023
-#define SHT_MIPS_XLATE 0x70000024
-#define SHT_MIPS_XLATE_DEBUG 0x70000025
-#define SHT_MIPS_WHIRL 0x70000026
-#define SHT_MIPS_EH_REGION 0x70000027
-#define SHT_MIPS_XLATE_OLD 0x70000028
-#define SHT_MIPS_PDR_EXCEPTION 0x70000029
+#define SHT_MIPS_LIBLIST 0x70000000 /* Shared objects used in link. */
+#define SHT_MIPS_MSYM 0x70000001
+#define SHT_MIPS_CONFLICT 0x70000002 /* Conflicting symbols. */
+#define SHT_MIPS_GPTAB 0x70000003 /* Global data area sizes. */
+#define SHT_MIPS_UCODE 0x70000004 /* Reserved for SGI/MIPS compilers */
+#define SHT_MIPS_DEBUG 0x70000005 /* MIPS ECOFF debugging info. */
+#define SHT_MIPS_REGINFO 0x70000006 /* Register usage information. */
+#define SHT_MIPS_PACKAGE 0x70000007
+#define SHT_MIPS_PACKSYM 0x70000008
+#define SHT_MIPS_RELD 0x70000009
+#define SHT_MIPS_IFACE 0x7000000b
+#define SHT_MIPS_CONTENT 0x7000000c
+#define SHT_MIPS_OPTIONS 0x7000000d /* Miscellaneous options. */
+#define SHT_MIPS_SHDR 0x70000010
+#define SHT_MIPS_FDESC 0x70000011
+#define SHT_MIPS_EXTSYM 0x70000012
+#define SHT_MIPS_DENSE 0x70000013
+#define SHT_MIPS_PDESC 0x70000014
+#define SHT_MIPS_LOCSYM 0x70000015
+#define SHT_MIPS_AUXSYM 0x70000016
+#define SHT_MIPS_OPTSYM 0x70000017
+#define SHT_MIPS_LOCSTR 0x70000018
+#define SHT_MIPS_LINE 0x70000019
+#define SHT_MIPS_RFDESC 0x7000001a
+#define SHT_MIPS_DELTASYM 0x7000001b
+#define SHT_MIPS_DELTAINST 0x7000001c
+#define SHT_MIPS_DELTACLASS 0x7000001d
+#define SHT_MIPS_DWARF 0x7000001e /* DWARF debugging information. */
+#define SHT_MIPS_DELTADECL 0x7000001f
+#define SHT_MIPS_SYMBOL_LIB 0x70000020
+#define SHT_MIPS_EVENTS 0x70000021 /* Event section. */
+#define SHT_MIPS_TRANSLATE 0x70000022
+#define SHT_MIPS_PIXIE 0x70000023
+#define SHT_MIPS_XLATE 0x70000024
+#define SHT_MIPS_XLATE_DEBUG 0x70000025
+#define SHT_MIPS_WHIRL 0x70000026
+#define SHT_MIPS_EH_REGION 0x70000027
+#define SHT_MIPS_XLATE_OLD 0x70000028
+#define SHT_MIPS_PDR_EXCEPTION 0x70000029
/* Legal values for sh_flags field of Elf32_Shdr. */
-#define SHF_MIPS_GPREL 0x10000000 /* Must be part of global data area */
-#define SHF_MIPS_MERGE 0x20000000
-#define SHF_MIPS_ADDR 0x40000000
-#define SHF_MIPS_STRINGS 0x80000000
-#define SHF_MIPS_NOSTRIP 0x08000000
-#define SHF_MIPS_LOCAL 0x04000000
-#define SHF_MIPS_NAMES 0x02000000
-#define SHF_MIPS_NODUPE 0x01000000
+#define SHF_MIPS_GPREL 0x10000000 /* Must be in global data area. */
+#define SHF_MIPS_MERGE 0x20000000
+#define SHF_MIPS_ADDR 0x40000000
+#define SHF_MIPS_STRINGS 0x80000000
+#define SHF_MIPS_NOSTRIP 0x08000000
+#define SHF_MIPS_LOCAL 0x04000000
+#define SHF_MIPS_NAMES 0x02000000
+#define SHF_MIPS_NODUPE 0x01000000
/* Symbol tables. */
@@ -1482,23 +1482,23 @@
{
struct
{
- Elf32_Word gt_current_g_value; /* -G value used for compilation */
- Elf32_Word gt_unused; /* Not used */
- } gt_header; /* First entry in section */
+ Elf32_Word gt_current_g_value; /* -G value used for compilation. */
+ Elf32_Word gt_unused; /* Not used. */
+ } gt_header; /* First entry in section. */
struct
{
- Elf32_Word gt_g_value; /* If this value were used for -G */
- Elf32_Word gt_bytes; /* This many bytes would be used */
- } gt_entry; /* Subsequent entries in section */
+ Elf32_Word gt_g_value; /* If this value were used for -G. */
+ Elf32_Word gt_bytes; /* This many bytes would be used. */
+ } gt_entry; /* Subsequent entries in section. */
} Elf32_gptab;
/* Entry found in sections of type SHT_MIPS_REGINFO. */
typedef struct
{
- Elf32_Word ri_gprmask; /* General registers used */
- Elf32_Word ri_cprmask[4]; /* Coprocessor registers used */
- Elf32_Sword ri_gp_value; /* $gp register value */
+ Elf32_Word ri_gprmask; /* General registers used. */
+ Elf32_Word ri_cprmask[4]; /* Coprocessor registers used. */
+ Elf32_Sword ri_gp_value; /* $gp register value. */
} Elf32_RegInfo;
/* Entries found in sections of type SHT_MIPS_OPTIONS. */
Modified: fsf/trunk/libc/elf/link.h
==============================================================================
--- fsf/trunk/libc/elf/link.h (original)
+++ fsf/trunk/libc/elf/link.h Fri Jan 11 00:01:41 2013
@@ -147,9 +147,9 @@
whether or not each later member is available. */
/* Incremented when a new object may have been added. */
- unsigned long long int dlpi_adds;
+ __extension__ unsigned long long int dlpi_adds;
/* Incremented when an object may have been removed. */
- unsigned long long int dlpi_subs;
+ __extension__ unsigned long long int dlpi_subs;
/* If there is a PT_TLS segment, its module ID as used in
TLS relocations, else zero. */
Modified: fsf/trunk/libc/include/features.h
==============================================================================
--- fsf/trunk/libc/include/features.h (original)
+++ fsf/trunk/libc/include/features.h Fri Jan 11 00:01:41 2013
@@ -129,9 +129,6 @@
# define __KERNEL_STRICT_NAMES
#endif
-/* Always use ISO C things. */
-#define __USE_ANSI 1
-
/* Convenience macros to test the versions of glibc and gcc.
Use them like this:
#if __GNUC_PREREQ (2,8)
Modified: fsf/trunk/libc/localedata/ChangeLog
==============================================================================
--- fsf/trunk/libc/localedata/ChangeLog (original)
+++ fsf/trunk/libc/localedata/ChangeLog Fri Jan 11 00:01:41 2013
@@ -1,3 +1,14 @@
+2013-01-10 H.J. Lu <hongjiu.lu@xxxxxxxxx>
+
+ * Makefile (tests-static): New variable.
+ (tests): Add $(tests-static).
+ (bug-setlocale1-ARGS): Set to -- $(built-program-cmd).
+ (bug-setlocale1-static-ENV): New variable.
+ (bug-setlocale1-static-ARGS): Likewise.
+ * bug-setlocale1.c (do_test): Support run directly. Check env[1]
+ instead of newargv[0].
+ * bug-setlocale1-static.c: New file.
+
2013-01-03 Chris Leonard <cjl@xxxxxxxxxxxxx>
[BZ #14982]
Modified: fsf/trunk/libc/localedata/Makefile
==============================================================================
--- fsf/trunk/libc/localedata/Makefile (original)
+++ fsf/trunk/libc/localedata/Makefile Fri Jan 11 00:01:41 2013
@@ -78,6 +78,8 @@
tests = $(locale_test_suite) tst-digits tst-setlocale bug-iconv-trans \
tst-leaks tst-mbswcs6 tst-xlocale1 tst-xlocale2 bug-usesetlocale \
tst-strfmon1 tst-sscanf bug-setlocale1 tst-setlocale2
+tests-static = bug-setlocale1-static
+tests += $(tests-static)
ifeq (yes,$(build-shared))
ifneq (no,$(PERL))
tests: $(objpfx)mtrace-tst-leaks
@@ -285,7 +287,9 @@
$(common-objpfx)malloc/mtrace $(objpfx)tst-leaks.mtrace > $@
bug-setlocale1-ENV = LOCPATH=$(common-objpfx)localedata
-bug-setlocale1-ARGS = $(common-objpfx)
+bug-setlocale1-ARGS = -- $(built-program-cmd)
+bug-setlocale1-static-ENV = $(bug-setlocale1-ENV)
+bug-setlocale1-static-ARGS = $(bug-setlocale1-ARGS)
tst-setlocale2-ENV = LOCPATH=$(common-objpfx)localedata
$(objdir)/iconvdata/gconv-modules:
Added: fsf/trunk/libc/localedata/bug-setlocale1-static.c
==============================================================================
--- fsf/trunk/libc/localedata/bug-setlocale1-static.c (added)
+++ fsf/trunk/libc/localedata/bug-setlocale1-static.c Fri Jan 11 00:01:41 2013
@@ -1,0 +1,1 @@
+#include "bug-setlocale1.c"
Modified: fsf/trunk/libc/localedata/bug-setlocale1.c
==============================================================================
--- fsf/trunk/libc/localedata/bug-setlocale1.c (original)
+++ fsf/trunk/libc/localedata/bug-setlocale1.c Fri Jan 11 00:01:41 2013
@@ -12,16 +12,16 @@
if (argc > 1)
{
char *newargv[5];
- asprintf (&newargv[0], "%self/ld.so", argv[1]);
- if (newargv[0] == NULL)
+ int i;
+ if (argc != 2 && argc != 5)
{
- puts ("asprintf failed");
+ printf ("wrong number of arguments (%d)\n", argc);
return 1;
}
- newargv[1] = (char *) "--library-path";
- newargv[2] = argv[1];
- newargv[3] = argv[0];
- newargv[4] = NULL;
+
+ for (i = 0; i < (argc == 5 ? 4 : 1); i++)
+ newargv[i] = argv[i + 1];
+ newargv[i] = NULL;
char *env[3];
env[0] = (char *) "LC_CTYPE=de_DE.UTF-8";
@@ -32,9 +32,9 @@
return 1;
}
asprintf (&env[1], "LOCPATH=%s", loc);
- if (newargv[0] == NULL)
+ if (env[1] == NULL)
{
- puts ("second asprintf failed");
+ puts ("asprintf failed");
return 1;
}
env[2] = NULL;
Modified: fsf/trunk/libc/math/bits/mathcalls.h
==============================================================================
--- fsf/trunk/libc/math/bits/mathcalls.h (original)
+++ fsf/trunk/libc/math/bits/mathcalls.h Fri Jan 11 00:01:41 2013
@@ -323,11 +323,13 @@
/* Round X to nearest integral value according to current rounding
direction. */
__MATHDECL (long int,lrint,, (_Mdouble_ __x));
+__extension__
__MATHDECL (long long int,llrint,, (_Mdouble_ __x));
/* Round X to nearest integral value, rounding halfway cases away from
zero. */
__MATHDECL (long int,lround,, (_Mdouble_ __x));
+__extension__
__MATHDECL (long long int,llround,, (_Mdouble_ __x));
Modified: fsf/trunk/libc/misc/error.c
==============================================================================
--- fsf/trunk/libc/misc/error.c (original)
+++ fsf/trunk/libc/misc/error.c Fri Jan 11 00:01:41 2013
@@ -130,7 +130,6 @@
#if _LIBC
if (_IO_fwide (stderr, 0) > 0)
{
-# define ALLOCA_LIMIT 2000
size_t len = strlen (message) + 1;
wchar_t *wmessage = NULL;
mbstate_t st;
Modified: fsf/trunk/libc/ports/ChangeLog.aarch64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.aarch64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.aarch64 Fri Jan 11 00:01:41 2013
@@ -1,3 +1,8 @@
+2013-01-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/aarch64/bits/setjmp.h (__jmp_buf): Use __extension__
+ with long long.
+
2013-01-02 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* All files with FSF copyright notices: Update copyright dates
Modified: fsf/trunk/libc/ports/ChangeLog.hppa
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.hppa (original)
+++ fsf/trunk/libc/ports/ChangeLog.hppa Fri Jan 11 00:01:41 2013
@@ -1,3 +1,11 @@
+2013-01-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/hppa/fpu/fpu_control.h (_FPU_GETCW): Use __extension__
+ with long long.
+ (_FPU_SETCW): Likewise.
+ * sysdeps/unix/sysv/linux/hppa/bits/ipc.h (struct ipc_perm):
+ Likewise.
+
2013-01-08 Andreas Jaeger <aj@xxxxxxx>
[BZ# 14985]
Modified: fsf/trunk/libc/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.m68k (original)
+++ fsf/trunk/libc/ports/ChangeLog.m68k Fri Jan 11 00:01:41 2013
@@ -1,3 +1,8 @@
+2013-01-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/m68k/bits/byteswap.h (__bswap_64): Use __extension__
+ with long long.
+
2013-01-04 Andreas Schwab <schwab@xxxxxxx>
* sysdeps/m68k/m680x0/fpu/libm-test-ulps: Update.
Modified: fsf/trunk/libc/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.mips (original)
+++ fsf/trunk/libc/ports/ChangeLog.mips Fri Jan 11 00:01:41 2013
@@ -1,3 +1,8 @@
+2013-01-10 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h (struct
+ sigcontext): Use __extension__ with long long in all definitions.
+
2013-01-08 Steve Ellcey <sellcey@xxxxxxxx>
* sysdeps/mips/memcpy.S: Change prefetch hint, reorder partial
Modified: fsf/trunk/libc/ports/ChangeLog.tile
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.tile (original)
+++ fsf/trunk/libc/ports/ChangeLog.tile Fri Jan 11 00:01:41 2013
@@ -1,3 +1,9 @@
+2013-01-10 Chris Metcalf <cmetcalf@xxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed: New file.
+ * sysdeps/unix/sysv/linux/tile/tilegx/configure.in: New file.
+ * sysdeps/unix/sysv/linux/tile/tilegx/configure: New file.
+
2013-01-02 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* All files with FSF copyright notices: Update copyright dates
Modified: fsf/trunk/libc/ports/sysdeps/aarch64/bits/setjmp.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/aarch64/bits/setjmp.h (original)
+++ fsf/trunk/libc/ports/sysdeps/aarch64/bits/setjmp.h Fri Jan 11 00:01:41 2013
@@ -27,7 +27,7 @@
/* Jump buffer contains:
x19-x28, x29(fp), x30(lr), (x31)sp, d8-d15. Other registers are not
saved. */
-typedef unsigned long long __jmp_buf [22];
+__extension__ typedef unsigned long long __jmp_buf [22];
#endif
#endif
Modified: fsf/trunk/libc/ports/sysdeps/hppa/fpu/fpu_control.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/hppa/fpu/fpu_control.h (original)
+++ fsf/trunk/libc/ports/sysdeps/hppa/fpu/fpu_control.h Fri Jan 11 00:01:41 2013
@@ -44,7 +44,7 @@
/* Macros for accessing the hardware control word. */
#define _FPU_GETCW(cw) \
({ \
- union { unsigned long long __fpreg; unsigned int __halfreg[2]; } __fullfp; \
+ union { __extension__ unsigned long long __fpreg; unsigned int __halfreg[2]; } __fullfp; \
/* Get the current status word. */ \
__asm__ ("fstd %%fr0,0(%1)\n\t" \
"fldd 0(%1),%%fr0\n\t" \
@@ -54,7 +54,7 @@
#define _FPU_SETCW(cw) \
({ \
- union { unsigned long long __fpreg; unsigned int __halfreg[2]; } __fullfp; \
+ union { __extension__ unsigned long long __fpreg; unsigned int __halfreg[2]; } __fullfp; \
__fullfp.__halfreg[0] = cw; \
__asm__ ("fldd 0(%1),%%fr0\n\t" \
: : "m" (__fullfp.__fpreg), "r" (__fullfp.__fpreg) : "%r0" ); \
Modified: fsf/trunk/libc/ports/sysdeps/m68k/bits/byteswap.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/m68k/bits/byteswap.h (original)
+++ fsf/trunk/libc/ports/sysdeps/m68k/bits/byteswap.h Fri Jan 11 00:01:41 2013
@@ -74,6 +74,7 @@
| (((x) & 0x00000000000000ffull) << 56))
/* Swap bytes in 64 bit value. */
+__extension__
static __inline unsigned long long
__bswap_64 (unsigned long long __bsx)
{
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h Fri Jan 11 00:01:41 2013
@@ -57,6 +57,6 @@
#endif
unsigned short int __seq; /* Sequence number. */
unsigned int __pad3;
- unsigned long long int __unused1;
- unsigned long long int __unused2;
+ __extension__ unsigned long long int __unused1;
+ __extension__ unsigned long long int __unused2;
};
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h Fri Jan 11 00:01:41 2013
@@ -39,16 +39,16 @@
struct sigcontext {
unsigned int sc_regmask;
unsigned int sc_status;
- unsigned long long sc_pc;
- unsigned long long sc_regs[32];
- unsigned long long sc_fpregs[32];
+ __extension__ unsigned long long sc_pc;
+ __extension__ unsigned long long sc_regs[32];
+ __extension__ unsigned long long sc_fpregs[32];
unsigned int sc_ownedfp;
unsigned int sc_fpc_csr;
unsigned int sc_fpc_eir;
unsigned int sc_used_math;
unsigned int sc_dsp;
- unsigned long long sc_mdhi;
- unsigned long long sc_mdlo;
+ __extension__ unsigned long long sc_mdhi;
+ __extension__ unsigned long long sc_mdlo;
unsigned long sc_hi1;
unsigned long sc_lo1;
unsigned long sc_hi2;
@@ -61,17 +61,17 @@
/* This structure changed in 2.6.12-rc4 when DSP support was added. */
struct sigcontext {
- unsigned long long sc_regs[32];
- unsigned long long sc_fpregs[32];
- unsigned long long sc_mdhi;
- unsigned long long sc_hi1;
- unsigned long long sc_hi2;
- unsigned long long sc_hi3;
- unsigned long long sc_mdlo;
- unsigned long long sc_lo1;
- unsigned long long sc_lo2;
- unsigned long long sc_lo3;
- unsigned long long sc_pc;
+ __extension__ unsigned long long sc_regs[32];
+ __extension__ unsigned long long sc_fpregs[32];
+ __extension__ unsigned long long sc_mdhi;
+ __extension__ unsigned long long sc_hi1;
+ __extension__ unsigned long long sc_hi2;
+ __extension__ unsigned long long sc_hi3;
+ __extension__ unsigned long long sc_mdlo;
+ __extension__ unsigned long long sc_lo1;
+ __extension__ unsigned long long sc_lo2;
+ __extension__ unsigned long long sc_lo3;
+ __extension__ unsigned long long sc_pc;
unsigned int sc_fpc_csr;
unsigned int sc_used_math;
unsigned int sc_dsp;
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure Fri Jan 11 00:01:41 2013
@@ -1,0 +1,4 @@
+# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/tile/tilegx
+
+ldd_rewrite_script=$dir/ldd-rewrite.sed
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in Fri Jan 11 00:01:41 2013
@@ -1,0 +1,4 @@
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/tile/tilegx
+
+ldd_rewrite_script=$dir/ldd-rewrite.sed
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed Fri Jan 11 00:01:41 2013
@@ -1,0 +1,1 @@
+s_^\(RTLDLIST=\)\(.*lib\)\(\|32\)\(/[^/]*\.so\.[0-9.]*\)[ ]*$_\1"\2\4 \232\4"_
Modified: fsf/trunk/libc/posix/Makefile
==============================================================================
--- fsf/trunk/libc/posix/Makefile (original)
+++ fsf/trunk/libc/posix/Makefile Fri Jan 11 00:01:41 2013
@@ -92,6 +92,8 @@
test-srcs := globtest
tests += wordexp-test tst-exec tst-spawn
endif
+tests-static = tst-exec-static tst-spawn-static
+tests += $(tests-static)
others := getconf
install-bin := getconf
install-others-programs := $(inst_libexecdir)/getconf
@@ -172,7 +174,9 @@
--none random --col --color --colour
tst-exec-ARGS = -- $(host-built-program-cmd)
+tst-exec-static-ARGS = $(tst-exec-ARGS)
tst-spawn-ARGS = -- $(host-built-program-cmd)
+tst-spawn-static-ARGS = $(tst-spawn-ARGS)
tst-dir-ARGS = `pwd` `cd $(common-objdir)/$(subdir); pwd` `cd $(common-objdir); pwd` $(objpfx)tst-dir
tst-chmod-ARGS = $(objdir)
tst-vfork3-ARGS = --test-dir=$(objpfx)
@@ -302,3 +306,8 @@
$(compile.c) -E -o - \
| sed -n -e '/@@@PRESENT_/s/@@@PRESENT_//p' > $@.new
mv -f $@.new $@
+
+# This file is only actually needed at install time. But forcing it to
+# be built both makes it available for eyeball inspection and avoids the
+# surprise of things that look like compilation being done by 'make install'.
+others: $(objpfx)getconf.speclist
Added: fsf/trunk/libc/posix/tst-exec-static.c
==============================================================================
--- fsf/trunk/libc/posix/tst-exec-static.c (added)
+++ fsf/trunk/libc/posix/tst-exec-static.c Fri Jan 11 00:01:41 2013
@@ -1,0 +1,1 @@
+#include "tst-exec.c"
Modified: fsf/trunk/libc/posix/tst-exec.c
==============================================================================
--- fsf/trunk/libc/posix/tst-exec.c (original)
+++ fsf/trunk/libc/posix/tst-exec.c Fri Jan 11 00:01:41 2013
@@ -126,10 +126,10 @@
int status;
/* We must have
- - four parameters left of called initially
- + path for ld.so
- + "--library-path"
- + the library path
+ - one or four parameters left if called initially
+ + path for ld.so optional
+ + "--library-path" optional
+ + the library path optional
+ the application name
- three parameters left if called through re-execution
+ file descriptor number which is supposed to be closed
@@ -145,7 +145,7 @@
return handle_restart (argv[1], argv[2], argv[3]);
}
- if (argc != 5)
+ if (argc != 2 && argc != 5)
error (EXIT_FAILURE, 0, "wrong number of arguments (%d)", argc);
/* Prepare the test. We are creating two files: one which file descriptor
@@ -185,8 +185,12 @@
snprintf (fd2name, sizeof fd2name, "%d", fd2);
/* This is the child. Construct the command line. */
- execl (argv[1], argv[1], argv[2], argv[3], argv[4], "--direct",
- "--restart", fd1name, fd2name, name1, NULL);
+ if (argc == 5)
+ execl (argv[1], argv[1], argv[2], argv[3], argv[4], "--direct",
+ "--restart", fd1name, fd2name, name1, NULL);
+ else
+ execl (argv[1], argv[1], "--direct",
+ "--restart", fd1name, fd2name, name1, NULL);
error (EXIT_FAILURE, errno, "cannot exec");
}
Added: fsf/trunk/libc/posix/tst-spawn-static.c
==============================================================================
--- fsf/trunk/libc/posix/tst-spawn-static.c (added)
+++ fsf/trunk/libc/posix/tst-spawn-static.c Fri Jan 11 00:01:41 2013
@@ -1,0 +1,1 @@
+#include "tst-spawn.c"
Modified: fsf/trunk/libc/posix/tst-spawn.c
==============================================================================
--- fsf/trunk/libc/posix/tst-spawn.c (original)
+++ fsf/trunk/libc/posix/tst-spawn.c Fri Jan 11 00:01:41 2013
@@ -169,12 +169,13 @@
char fd3name[18];
char fd4name[18];
char *spargv[12];
+ int i;
/* We must have
- - four parameters left of called initially
- + path for ld.so
- + "--library-path"
- + the library path
+ - one or four parameters left if called initially
+ + path for ld.so optional
+ + "--library-path" optional
+ + the library path optional
+ the application name
- five parameters left if called through re-execution
+ file descriptor number which is supposed to be closed
@@ -183,7 +184,7 @@
+ thhe duped second descriptor
+ the name of the closed descriptor
*/
- if (argc != (restart ? 6 : 5))
+ if (argc != (restart ? 6 : 2) && argc != (restart ? 6 : 5))
error (EXIT_FAILURE, 0, "wrong number of arguments (%d)", argc);
if (restart)
@@ -235,18 +236,16 @@
snprintf (fd3name, sizeof fd3name, "%d", fd3);
snprintf (fd4name, sizeof fd4name, "%d", fd4);
- spargv[0] = argv[1];
- spargv[1] = argv[2];
- spargv[2] = argv[3];
- spargv[3] = argv[4];
- spargv[4] = (char *) "--direct";
- spargv[5] = (char *) "--restart";
- spargv[6] = fd1name;
- spargv[7] = fd2name;
- spargv[8] = fd3name;
- spargv[9] = fd4name;
- spargv[10] = name1;
- spargv[11] = NULL;
+ for (i = 0; i < (argc == (restart ? 6 : 5) ? 4 : 1); i++)
+ spargv[i] = argv[i + 1];
+ spargv[i++] = (char *) "--direct";
+ spargv[i++] = (char *) "--restart";
+ spargv[i++] = fd1name;
+ spargv[i++] = fd2name;
+ spargv[i++] = fd3name;
+ spargv[i++] = fd4name;
+ spargv[i++] = name1;
+ spargv[i] = NULL;
if (posix_spawn (&pid, argv[1], &actions, NULL, spargv, environ) != 0)
error (EXIT_FAILURE, errno, "posix_spawn");
Modified: fsf/trunk/libc/stdlib/stdlib.h
==============================================================================
--- fsf/trunk/libc/stdlib/stdlib.h (original)
+++ fsf/trunk/libc/stdlib/stdlib.h Fri Jan 11 00:01:41 2013
@@ -415,7 +415,8 @@
unsigned short int __old_x[3]; /* Old state. */
unsigned short int __c; /* Additive const. in congruential formula. */
unsigned short int __init; /* Flag for initializing. */
- unsigned long long int __a; /* Factor in congruential formula. */
+ __extension__ unsigned long long int __a; /* Factor in congruential
+ formula. */
};
/* Return non-negative, double-precision floating-point value in [0.0,1.0). */
Modified: fsf/trunk/libc/string/string.h
==============================================================================
--- fsf/trunk/libc/string/string.h (original)
+++ fsf/trunk/libc/string/string.h Fri Jan 11 00:01:41 2013
@@ -522,10 +522,8 @@
platforms. */
# ifdef __USE_GNU
extern int ffsl (long int __l) __THROW __attribute__ ((__const__));
-# ifdef __GNUC__
__extension__ extern int ffsll (long long int __ll)
__THROW __attribute__ ((__const__));
-# endif
# endif
/* Compare S1 and S2, ignoring case. */
Modified: fsf/trunk/libc/sysdeps/generic/inttypes.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/inttypes.h (original)
+++ fsf/trunk/libc/sysdeps/generic/inttypes.h Fri Jan 11 00:01:41 2013
@@ -286,8 +286,8 @@
/* We have to define the `uintmax_t' type using `lldiv_t'. */
typedef struct
{
- long long int quot; /* Quotient. */
- long long int rem; /* Remainder. */
+ __extension__ long long int quot; /* Quotient. */
+ __extension__ long long int rem; /* Remainder. */
} imaxdiv_t;
#endif
Modified: fsf/trunk/libc/sysdeps/gnu/netinet/tcp.h
==============================================================================
--- fsf/trunk/libc/sysdeps/gnu/netinet/tcp.h (original)
+++ fsf/trunk/libc/sysdeps/gnu/netinet/tcp.h Fri Jan 11 00:01:41 2013
@@ -37,20 +37,29 @@
/*
* User-settable options (used with setsockopt).
*/
-#define TCP_NODELAY 1 /* Don't delay send to coalesce packets */
-#define TCP_MAXSEG 2 /* Set maximum segment size */
-#define TCP_CORK 3 /* Control sending of partial frames */
-#define TCP_KEEPIDLE 4 /* Start keeplives after this period */
-#define TCP_KEEPINTVL 5 /* Interval between keepalives */
-#define TCP_KEEPCNT 6 /* Number of keepalives before death */
-#define TCP_SYNCNT 7 /* Number of SYN retransmits */
-#define TCP_LINGER2 8 /* Life time of orphaned FIN-WAIT-2 state */
-#define TCP_DEFER_ACCEPT 9 /* Wake up listener only when data arrive */
-#define TCP_WINDOW_CLAMP 10 /* Bound advertised window */
-#define TCP_INFO 11 /* Information about this connection. */
-#define TCP_QUICKACK 12 /* Bock/reenable quick ACKs. */
-#define TCP_CONGESTION 13 /* Congestion control algorithm. */
-#define TCP_MD5SIG 14 /* TCP MD5 Signature (RFC2385) */
+#define TCP_NODELAY 1 /* Don't delay send to coalesce packets */
+#define TCP_MAXSEG 2 /* Set maximum segment size */
+#define TCP_CORK 3 /* Control sending of partial frames */
+#define TCP_KEEPIDLE 4 /* Start keeplives after this period */
+#define TCP_KEEPINTVL 5 /* Interval between keepalives */
+#define TCP_KEEPCNT 6 /* Number of keepalives before death */
+#define TCP_SYNCNT 7 /* Number of SYN retransmits */
+#define TCP_LINGER2 8 /* Life time of orphaned FIN-WAIT-2 state */
+#define TCP_DEFER_ACCEPT 9 /* Wake up listener only when data arrive */
+#define TCP_WINDOW_CLAMP 10 /* Bound advertised window */
+#define TCP_INFO 11 /* Information about this connection. */
+#define TCP_QUICKACK 12 /* Bock/reenable quick ACKs. */
+#define TCP_CONGESTION 13 /* Congestion control algorithm. */
+#define TCP_MD5SIG 14 /* TCP MD5 Signature (RFC2385) */
+#define TCP_COOKIE_TRANSACTIONS 15 /* TCP Cookie Transactions */
+#define TCP_THIN_LINEAR_TIMEOUTS 16 /* Use linear timeouts for thin streams*/
+#define TCP_THIN_DUPACK 17 /* Fast retrans. after 1 dupack */
+#define TCP_USER_TIMEOUT 18 /* How long for loss retry before timeout */
+#define TCP_REPAIR 19 /* TCP sock is under repair right now */
+#define TCP_REPAIR_QUEUE 20 /* Set TCP queue to repair */
+#define TCP_QUEUE_SEQ 21 /* Set sequence number of repaired queue. */
+#define TCP_REPAIR_OPTIONS 22 /* Repair TCP connection options */
+#define TCP_FASTOPEN 23 /* Enable FastOpen on listeners */
#ifdef __USE_MISC
# include <sys/types.h>
@@ -243,6 +252,49 @@
u_int8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary). */
};
+/* For socket repair options. */
+struct tcp_repair_opt
+{
+ u_int32_t opt_code;
+ u_int32_t opt_val;
+};
+
+/* Queue to repair, for TCP_REPAIR_QUEUE. */
+enum
+{
+ TCP_NO_QUEUE,
+ TCP_RECV_QUEUE,
+ TCP_SEND_QUEUE,
+ TCP_QUEUES_NR,
+};
+
+/* For cookie transactions socket options. */
+#define TCP_COOKIE_MIN 8 /* 64-bits */
+#define TCP_COOKIE_MAX 16 /* 128-bits */
+#define TCP_COOKIE_PAIR_SIZE (2*TCP_COOKIE_MAX)
+
+/* Flags for both getsockopt and setsockopt */
+#define TCP_COOKIE_IN_ALWAYS (1 << 0) /* Discard SYN without cookie */
+#define TCP_COOKIE_OUT_NEVER (1 << 1) /* Prohibit outgoing cookies,
+ * supercedes everything. */
+
+/* Flags for getsockopt */
+#define TCP_S_DATA_IN (1 << 2) /* Was data received? */
+#define TCP_S_DATA_OUT (1 << 3) /* Was data sent? */
+
+#define TCP_MSS_DEFAULT 536U /* IPv4 (RFC1122, RFC2581) */
+#define TCP_MSS_DESIRED 1220U /* IPv6 (tunneled), EDNS0 (RFC3226) */
+
+struct tcp_cookie_transactions
+{
+ u_int16_t tcpct_flags;
+ u_int8_t __tcpct_pad1;
+ u_int8_t tcpct_cookie_desired;
+ u_int16_t tcpct_s_data_desired;
+ u_int16_t tcpct_used;
+ u_int8_t tcpct_value[TCP_MSS_DEFAULT];
+};
+
#endif /* Misc. */
#endif /* netinet/tcp.h */
Modified: fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.c Fri Jan 11 00:01:41 2013
@@ -37,41 +37,93 @@
# define SECTION
#endif
-/* Multi-Precision exponential function subroutine (for p >= 4, */
-/* 2**(-55) <= abs(x) <= 1024). */
+/* Multi-Precision exponential function subroutine (for p >= 4,
+ 2**(-55) <= abs(x) <= 1024). */
void
SECTION
-__mpexp(mp_no *x, mp_no *y, int p) {
+__mpexp (mp_no *x, mp_no *y, int p)
+{
+ int i, j, k, m, m1, m2, n;
+ double a, b;
+ static const int np[33] =
+ {
+ 0, 0, 0, 0, 3, 3, 4, 4, 5, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8
+ };
+ static const int m1p[33] =
+ {
+ 0, 0, 0, 0,
+ 17, 23, 23, 28,
+ 27, 38, 42, 39,
+ 43, 47, 43, 47,
+ 50, 54, 57, 60,
+ 64, 67, 71, 74,
+ 68, 71, 74, 77,
+ 70, 73, 76, 78,
+ 81
+ };
+ /* Stored values for 2^-m, where values of m are defined in M1P above. */
+ static const double __mpexp_twomm1[33] =
+ {
+ 0x1.0p0, 0x1.0p0, 0x1.0p0, 0x1.0p0,
+ 0x1.0p-17, 0x1.0p-23, 0x1.0p-23, 0x1.0p-28,
+ 0x1.0p-27, 0x1.0p-38, 0x1.0p-42, 0x1.0p-39,
+ 0x1.0p-43, 0x1.0p-47, 0x1.0p-43, 0x1.0p-47,
+ 0x1.0p-50, 0x1.0p-54, 0x1.0p-57, 0x1.0p-60,
+ 0x1.0p-64, 0x1.0p-67, 0x1.0p-71, 0x1.0p-74,
+ 0x1.0p-68, 0x1.0p-71, 0x1.0p-74, 0x1.0p-77,
+ 0x1.0p-70, 0x1.0p-73, 0x1.0p-76, 0x1.0p-78,
+ 0x1.0p-81
+ };
+ static const int m1np[7][18] =
+ {
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
+ {0, 0, 0, 0, 36, 48, 60, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
+ {0, 0, 0, 0, 24, 32, 40, 48, 56, 64, 72, 0, 0, 0, 0, 0, 0, 0},
+ {0, 0, 0, 0, 17, 23, 29, 35, 41, 47, 53, 59, 65, 0, 0, 0, 0, 0},
+ {0, 0, 0, 0, 0, 0, 23, 28, 33, 38, 42, 47, 52, 57, 62, 66, 0, 0},
+ {0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 39, 43, 47, 51, 55, 59, 63},
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 47, 50, 54}
+ };
+ mp_no mpk =
+ {
+ 0,
+ {
+ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
+ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
+ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
+ }
+ };
+ mp_no mps, mpak, mpt1, mpt2;
- int i,j,k,m,m1,m2,n;
- double a,b;
- static const int np[33] = {0,0,0,0,3,3,4,4,5,4,4,5,5,5,6,6,6,6,6,6,
- 6,6,6,6,7,7,7,7,8,8,8,8,8};
- static const int m1p[33]= {0,0,0,0,17,23,23,28,27,38,42,39,43,47,43,47,50,54,
- 57,60,64,67,71,74,68,71,74,77,70,73,76,78,81};
- static const int m1np[7][18] = {
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
- { 0, 0, 0, 0,36,48,60,72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
- { 0, 0, 0, 0,24,32,40,48,56,64,72, 0, 0, 0, 0, 0, 0, 0},
- { 0, 0, 0, 0,17,23,29,35,41,47,53,59,65, 0, 0, 0, 0, 0},
- { 0, 0, 0, 0, 0, 0,23,28,33,38,42,47,52,57,62,66, 0, 0},
- { 0, 0, 0, 0, 0, 0, 0, 0,27, 0, 0,39,43,47,51,55,59,63},
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,43,47,50,54}};
- mp_no mpk = {0,{0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
- 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
- 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0}};
- mp_no mps,mpak,mpt1,mpt2;
-
- /* Choose m,n and compute a=2**(-m) */
- n = np[p]; m1 = m1p[p]; a = __mpexp_twomm1[p].d;
- for (i=0; i<EX; i++) a *= RADIXI;
- for ( ; i>EX; i--) a *= RADIX;
- b = X[1]*RADIXI; m2 = 24*EX;
- for (; b<HALF; m2--) { a *= TWO; b *= TWO; }
- if (b == HALF) {
- for (i=2; i<=p; i++) { if (X[i]!=ZERO) break; }
- if (i==p+1) { m2--; a *= TWO; }
- }
+ /* Choose m,n and compute a=2**(-m). */
+ n = np[p];
+ m1 = m1p[p];
+ a = __mpexp_twomm1[p];
+ for (i = 0; i < EX; i++)
+ a *= RADIXI;
+ for (; i > EX; i--)
+ a *= RADIX;
+ b = X[1] * RADIXI;
+ m2 = 24 * EX;
+ for (; b < HALF; m2--)
+ {
+ a *= TWO;
+ b *= TWO;
+ }
+ if (b == HALF)
+ {
+ for (i = 2; i <= p; i++)
+ {
+ if (X[i] != ZERO)
+ break;
+ }
+ if (i == p + 1)
+ {
+ m2--;
+ a *= TWO;
+ }
+ }
m = m1 + m2;
if (__glibc_unlikely (m <= 0))
@@ -89,30 +141,42 @@
break;
}
- /* Compute s=x*2**(-m). Put result in mps */
- __dbl_mp(a,&mpt1,p);
- __mul(x,&mpt1,&mps,p);
+ /* Compute s=x*2**(-m). Put result in mps. */
+ __dbl_mp (a, &mpt1, p);
+ __mul (x, &mpt1, &mps, p);
- /* Evaluate the polynomial. Put result in mpt2 */
- mpk.e = 1; mpk.d[0] = ONE; mpk.d[1]=n;
- __dvd(&mps,&mpk,&mpt1,p);
- __add(&mpone,&mpt1,&mpak,p);
- for (k=n-1; k>1; k--) {
- __mul(&mps,&mpak,&mpt1,p);
- mpk.d[1] = k;
- __dvd(&mpt1,&mpk,&mpt2,p);
- __add(&mpone,&mpt2,&mpak,p);
- }
- __mul(&mps,&mpak,&mpt1,p);
- __add(&mpone,&mpt1,&mpt2,p);
+ /* Evaluate the polynomial. Put result in mpt2. */
+ mpk.e = 1;
+ mpk.d[0] = ONE;
+ mpk.d[1] = n;
+ __dvd (&mps, &mpk, &mpt1, p);
+ __add (&mpone, &mpt1, &mpak, p);
+ for (k = n - 1; k > 1; k--)
+ {
+ __mul (&mps, &mpak, &mpt1, p);
+ mpk.d[1] = k;
+ __dvd (&mpt1, &mpk, &mpt2, p);
+ __add (&mpone, &mpt2, &mpak, p);
+ }
+ __mul (&mps, &mpak, &mpt1, p);
+ __add (&mpone, &mpt1, &mpt2, p);
- /* Raise polynomial value to the power of 2**m. Put result in y */
- for (k=0,j=0; k<m; ) {
- __mul(&mpt2,&mpt2,&mpt1,p); k++;
- if (k==m) { j=1; break; }
- __mul(&mpt1,&mpt1,&mpt2,p); k++;
- }
- if (j) __cpy(&mpt1,y,p);
- else __cpy(&mpt2,y,p);
+ /* Raise polynomial value to the power of 2**m. Put result in y. */
+ for (k = 0, j = 0; k < m;)
+ {
+ __mul (&mpt2, &mpt2, &mpt1, p);
+ k++;
+ if (k == m)
+ {
+ j = 1;
+ break;
+ }
+ __mul (&mpt1, &mpt1, &mpt2, p);
+ k++;
+ }
+ if (j)
+ __cpy (&mpt1, y, p);
+ else
+ __cpy (&mpt2, y, p);
return;
}
Modified: fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.h
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.h (original)
+++ fsf/trunk/libc/sysdeps/ieee754/dbl-64/mpexp.h Fri Jan 11 00:01:41 2013
@@ -27,90 +27,6 @@
#ifndef MPEXP_H
#define MPEXP_H
-extern const number __mpexp_twomm1[33] attribute_hidden;
-
-#ifndef AVOID_MPEXP_H
-#ifdef BIG_ENDI
- const number
- __mpexp_twomm1[33] = { /* 2**-m1 */
-/**/ {{0x3ff00000, 0x00000000} }, /* 1 */
-/**/ {{0x3ff00000, 0x00000000} }, /* 1 */
-/**/ {{0x3ff00000, 0x00000000} }, /* 1 */
-/**/ {{0x3ff00000, 0x00000000} }, /* 1 */
-/**/ {{0x3ee00000, 0x00000000} }, /* 2**-17 */
-/**/ {{0x3e800000, 0x00000000} }, /* 2**-23 */
-/**/ {{0x3e800000, 0x00000000} }, /* 2**-23 */
-/**/ {{0x3e300000, 0x00000000} }, /* 2**-28 */
-/**/ {{0x3e400000, 0x00000000} }, /* 2**-27 */
-/**/ {{0x3d900000, 0x00000000} }, /* 2**-38 */
-/**/ {{0x3d500000, 0x00000000} }, /* 2**-42 */
-/**/ {{0x3d800000, 0x00000000} }, /* 2**-39 */
-/**/ {{0x3d400000, 0x00000000} }, /* 2**-43 */
-/**/ {{0x3d000000, 0x00000000} }, /* 2**-47 */
-/**/ {{0x3d400000, 0x00000000} }, /* 2**-43 */
-/**/ {{0x3d000000, 0x00000000} }, /* 2**-47 */
-/**/ {{0x3cd00000, 0x00000000} }, /* 2**-50 */
-/**/ {{0x3c900000, 0x00000000} }, /* 2**-54 */
-/**/ {{0x3c600000, 0x00000000} }, /* 2**-57 */
-/**/ {{0x3c300000, 0x00000000} }, /* 2**-60 */
-/**/ {{0x3bf00000, 0x00000000} }, /* 2**-64 */
-/**/ {{0x3bc00000, 0x00000000} }, /* 2**-67 */
-/**/ {{0x3b800000, 0x00000000} }, /* 2**-71 */
-/**/ {{0x3b500000, 0x00000000} }, /* 2**-74 */
-/**/ {{0x3bb00000, 0x00000000} }, /* 2**-68 */
-/**/ {{0x3b800000, 0x00000000} }, /* 2**-71 */
-/**/ {{0x3b500000, 0x00000000} }, /* 2**-74 */
-/**/ {{0x3b200000, 0x00000000} }, /* 2**-77 */
-/**/ {{0x3b900000, 0x00000000} }, /* 2**-70 */
-/**/ {{0x3b600000, 0x00000000} }, /* 2**-73 */
-/**/ {{0x3b300000, 0x00000000} }, /* 2**-76 */
-/**/ {{0x3b100000, 0x00000000} }, /* 2**-78 */
-/**/ {{0x3ae00000, 0x00000000} }, /* 2**-81 */
- };
-
-#else
-#ifdef LITTLE_ENDI
- const number
- __mpexp_twomm1[33] = { /* 2**-m1 */
-/**/ {{0x00000000, 0x3ff00000} }, /* 1 */
-/**/ {{0x00000000, 0x3ff00000} }, /* 1 */
-/**/ {{0x00000000, 0x3ff00000} }, /* 1 */
-/**/ {{0x00000000, 0x3ff00000} }, /* 1 */
-/**/ {{0x00000000, 0x3ee00000} }, /* 2**-17 */
-/**/ {{0x00000000, 0x3e800000} }, /* 2**-23 */
-/**/ {{0x00000000, 0x3e800000} }, /* 2**-23 */
-/**/ {{0x00000000, 0x3e300000} }, /* 2**-28 */
-/**/ {{0x00000000, 0x3e400000} }, /* 2**-27 */
-/**/ {{0x00000000, 0x3d900000} }, /* 2**-38 */
-/**/ {{0x00000000, 0x3d500000} }, /* 2**-42 */
-/**/ {{0x00000000, 0x3d800000} }, /* 2**-39 */
-/**/ {{0x00000000, 0x3d400000} }, /* 2**-43 */
-/**/ {{0x00000000, 0x3d000000} }, /* 2**-47 */
-/**/ {{0x00000000, 0x3d400000} }, /* 2**-43 */
-/**/ {{0x00000000, 0x3d000000} }, /* 2**-47 */
-/**/ {{0x00000000, 0x3cd00000} }, /* 2**-50 */
-/**/ {{0x00000000, 0x3c900000} }, /* 2**-54 */
-/**/ {{0x00000000, 0x3c600000} }, /* 2**-57 */
-/**/ {{0x00000000, 0x3c300000} }, /* 2**-60 */
-/**/ {{0x00000000, 0x3bf00000} }, /* 2**-64 */
-/**/ {{0x00000000, 0x3bc00000} }, /* 2**-67 */
-/**/ {{0x00000000, 0x3b800000} }, /* 2**-71 */
-/**/ {{0x00000000, 0x3b500000} }, /* 2**-74 */
-/**/ {{0x00000000, 0x3bb00000} }, /* 2**-68 */
-/**/ {{0x00000000, 0x3b800000} }, /* 2**-71 */
-/**/ {{0x00000000, 0x3b500000} }, /* 2**-74 */
-/**/ {{0x00000000, 0x3b200000} }, /* 2**-77 */
-/**/ {{0x00000000, 0x3b900000} }, /* 2**-70 */
-/**/ {{0x00000000, 0x3b600000} }, /* 2**-73 */
-/**/ {{0x00000000, 0x3b300000} }, /* 2**-76 */
-/**/ {{0x00000000, 0x3b100000} }, /* 2**-78 */
-/**/ {{0x00000000, 0x3ae00000} }, /* 2**-81 */
- };
-
-#endif
-#endif
-#endif
-
#define RADIX 0x1.0p24 /* 2^24 */
#define RADIXI 0x1.0p-24 /* 2^-24 */
#define ZERO 0.0 /* 0 */
Modified: fsf/trunk/libc/sysdeps/s390/bits/byteswap.h
==============================================================================
--- fsf/trunk/libc/sysdeps/s390/bits/byteswap.h (original)
+++ fsf/trunk/libc/sysdeps/s390/bits/byteswap.h Fri Jan 11 00:01:41 2013
@@ -123,6 +123,7 @@
| (((x) & 0x000000000000ff00ull) << 40) \
| (((x) & 0x00000000000000ffull) << 56))
+__extension__
static __inline unsigned long long int
__bswap_64 (unsigned long long int __bsx)
{
Modified: fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps Fri Jan 11 00:01:41 2013
@@ -407,6 +407,30 @@
idouble: 1
ildouble: 1
ldouble: 1
+Test "Imaginary part of: casin (-0x1p500 + 1.0 i) == -1.570796326794896619231321691639751442099 + 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-0x1p500 - 1.0 i) == -1.570796326794896619231321691639751442099 - 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-0x1p5000 + 1.0 i) == -1.570796326794896619231321691639751442099 + 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-0x1p5000 - 1.0 i) == -1.570796326794896619231321691639751442099 - 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.0 + 0x1p500 i) == -3.054936363499604682051979393213617699789e-151 + 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.0 + 0x1p5000 i) == -7.079811261048172892385615158694057552948e-1506 + 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.0 - 0x1p500 i) == -3.054936363499604682051979393213617699789e-151 - 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.0 - 0x1p5000 i) == -7.079811261048172892385615158694057552948e-1506 - 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i":
double: 1
float: 1
@@ -420,6 +444,39 @@
idouble: 1
ifloat: 1
Test "Imaginary part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (0x1.fp1023 + 0x1.fp1023 i) == 7.853981633974483096156608458198757210493e-1 + 7.107906849659093345062145442726115449315e2 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp127 + 0x1.fp127 i) == 7.853981633974483096156608458198757210493e-1 + 8.973081118419833726837456344608533993585e1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp16383 + 0x1.fp16383 i) == 7.853981633974483096156608458198757210493e-1 + 1.135753137836666928715489992987020363057e4 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (0x1p500 + 1.0 i) == 1.570796326794896619231321691639751442099 + 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (0x1p500 - 1.0 i) == 1.570796326794896619231321691639751442099 - 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (0x1p5000 + 1.0 i) == 1.570796326794896619231321691639751442099 + 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (0x1p5000 - 1.0 i) == 1.570796326794896619231321691639751442099 - 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.0 + 0x1p500 i) == 3.054936363499604682051979393213617699789e-151 + 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.0 + 0x1p5000 i) == 7.079811261048172892385615158694057552948e-1506 + 3.466429049980286492395577839412341016946e3 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.0 - 0x1p500 i) == 3.054936363499604682051979393213617699789e-151 - 3.472667374605326000180332928505464606058e2 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.0 - 0x1p5000 i) == 7.079811261048172892385615158694057552948e-1506 - 3.466429049980286492395577839412341016946e3 i":
ildouble: 1
ldouble: 1
Test "Imaginary part of: casin (1.5 + +0 i) == pi/2 + 0.9624236501192068949955178268487368462704 i":
@@ -459,6 +516,18 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (-0x1p500 + 1.0 i) == -3.472667374605326000180332928505464606058e2 + 3.054936363499604682051979393213617699789e-151 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1p500 - 1.0 i) == -3.472667374605326000180332928505464606058e2 - 3.054936363499604682051979393213617699789e-151 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1p5000 + 1.0 i) == -3.466429049980286492395577839412341016946e3 + 7.079811261048172892385615158694057552948e-1506 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1p5000 - 1.0 i) == -3.466429049980286492395577839412341016946e3 - 7.079811261048172892385615158694057552948e-1506 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i":
double: 2
float: 1
@@ -466,6 +535,12 @@
ifloat: 1
ildouble: 3
ldouble: 3
+Test "Real part of: casinh (-1.0 + 0x1p500 i) == -3.472667374605326000180332928505464606058e2 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-1.0 + 0x1p5000 i) == -3.466429049980286492395577839412341016946e3 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0 i) == -0.8813735870195430252326093249797923090282 - 0 i":
double: 2
float: 1
@@ -473,6 +548,12 @@
ifloat: 1
ildouble: 3
ldouble: 3
+Test "Real part of: casinh (-1.0 - 0x1p500 i) == -3.472667374605326000180332928505464606058e2 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-1.0 - 0x1p5000 i) == -3.466429049980286492395577839412341016946e3 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.5 + +0 i) == -1.194763217287109304111930828519090523536 + +0 i":
double: 2
float: 1
@@ -523,6 +604,27 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (0x1.fp1023 + 0x1.fp1023 i) == 7.107906849659093345062145442726115449315e2 + 7.853981633974483096156608458198757210493e-1 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (0x1.fp127 + 0x1.fp127 i) == 8.973081118419833726837456344608533993585e1 + 7.853981633974483096156608458198757210493e-1 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (0x1.fp16383 + 0x1.fp16383 i) == 1.135753137836666928715489992987020363057e4 + 7.853981633974483096156608458198757210493e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1p500 + 1.0 i) == 3.472667374605326000180332928505464606058e2 + 3.054936363499604682051979393213617699789e-151 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1p500 - 1.0 i) == 3.472667374605326000180332928505464606058e2 - 3.054936363499604682051979393213617699789e-151 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1p5000 + 1.0 i) == 3.466429049980286492395577839412341016946e3 + 7.079811261048172892385615158694057552948e-1506 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1p5000 - 1.0 i) == 3.466429049980286492395577839412341016946e3 - 7.079811261048172892385615158694057552948e-1506 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 + +0 i) == 0.8813735870195430252326093249797923090282 + +0 i":
double: 1
float: 1
@@ -530,11 +632,23 @@
ifloat: 1
ildouble: 1
ldouble: 1
+Test "Real part of: casinh (1.0 + 0x1p500 i) == 3.472667374605326000180332928505464606058e2 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (1.0 + 0x1p5000 i) == 3.466429049980286492395577839412341016946e3 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (1.0 - 0 i) == 0.8813735870195430252326093249797923090282 - 0 i":
double: 1
float: 1
idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (1.0 - 0x1p500 i) == 3.472667374605326000180332928505464606058e2 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (1.0 - 0x1p5000 i) == 3.466429049980286492395577839412341016946e3 - 1.570796326794896619231321691639751442099 i":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i":
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/fcntl-linux.h Fri Jan 11 00:01:41 2013
@@ -294,6 +294,13 @@
we splice from/to). */
# define SPLICE_F_MORE 4 /* Expect more data. */
# define SPLICE_F_GIFT 8 /* Pages passed in are a gift. */
+
+
+/* Flags for fallocate. */
+# define FALLOC_FL_KEEP_SIZE 1 /* Don't extend size of file
+ even if offset + len is
+ greater than file size. */
+# define FALLOC_FL_PUNCH_HOLE 2 /* Create a hole in the file. */
/* File handle structure. */
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/Versions
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/Versions (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/Versions Fri Jan 11 00:01:41 2013
@@ -3,5 +3,6 @@
__vdso_get_tbfreq;
__vdso_clock_gettime;
__vdso_clock_getres;
+ __vdso_getcpu;
}
}
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h Fri Jan 11 00:01:41 2013
@@ -30,6 +30,8 @@
extern void *__vdso_get_tbfreq;
+extern void *__vdso_getcpu;
+
#endif
#endif /* _LIBC_VDSO_H */
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/init-first.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/init-first.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/init-first.c Fri Jan 11 00:01:41 2013
@@ -27,6 +27,7 @@
void *__vdso_clock_gettime;
void *__vdso_clock_getres;
void *__vdso_get_tbfreq;
+void *__vdso_getcpu;
static inline void
@@ -41,6 +42,8 @@
__vdso_clock_getres = _dl_vdso_vsym ("__kernel_clock_getres", &linux2615);
__vdso_get_tbfreq = _dl_vdso_vsym ("__kernel_vdso_get_tbfreq", &linux2615);
+
+ __vdso_getcpu = _dl_vdso_vsym ("__kernel_getcpu", &linux2615);
}
# define VDSO_SETUP _libc_vdso_platform_setup
Added: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c (added)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c Fri Jan 11 00:01:41 2013
@@ -1,0 +1,30 @@
+/* Copyright (C) 2013 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 <sched.h>
+#include <sysdep.h>
+#include <bits/libc-vdso.h>
+
+
+int
+sched_getcpu (void)
+{
+ unsigned int cpu;
+ int r = INLINE_VSYSCALL (getcpu, 3, &cpu, NULL, NULL);
+
+ return r == -1 ? r : cpu;
+}
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/ipc.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/ipc.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/ipc.h Fri Jan 11 00:01:41 2013
@@ -56,6 +56,6 @@
unsigned short int __pad1;
#endif
unsigned short int __seq; /* Sequence number. */
- unsigned long long int __unused1;
- unsigned long long int __unused2;
+ __extension__ unsigned long long int __unused1;
+ __extension__ unsigned long long int __unused2;
};
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ucontext.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ucontext.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ucontext.h Fri Jan 11 00:01:41 2013
@@ -217,7 +217,7 @@
typedef struct fpu
{
union { /* FPU floating point regs */
- unsigned long long fpu_regs[32]; /* 32 singles */
+ __extension__ unsigned long long fpu_regs[32]; /* 32 singles */
double fpu_dregs[16]; /* 16 doubles */
} fpu_fr;
struct fq *fpu_q; /* ptr to array of FQ entries */
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h Fri Jan 11 00:01:41 2013
@@ -64,14 +64,18 @@
#else /* __WORDSIZE == 32 */
-/* By default we have 32-bit wide `int', `long int', pointers and `off_t'
- and all platforms support LFS. */
-# define _POSIX_V7_ILP32_OFF32 1
+/* We have 32-bit wide `int', `long int' and pointers and all platforms
+ support LFS. -mx32 has 64-bit wide `off_t'. */
# define _POSIX_V7_ILP32_OFFBIG 1
-# define _POSIX_V6_ILP32_OFF32 1
-# define _POSIX_V6_ILP32_OFFBIG 1
-# define _XBS5_ILP32_OFF32 1
+# define _POSIX_V6_ILP32_OFFBIG 1
# define _XBS5_ILP32_OFFBIG 1
+
+# ifndef __x86_64__
+/* -m32 has 32-bit wide `off_t'. */
+# define _POSIX_V7_ILP32_OFF32 1
+# define _POSIX_V6_ILP32_OFF32 1
+# define _XBS5_ILP32_OFF32 1
+# endif
/* We optionally provide an environment with the above size but an 64-bit
side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */
@@ -89,8 +93,13 @@
#endif /* __WORDSIZE == 32 */
#define __ILP32_OFF32_CFLAGS "-m32"
-#define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
#define __ILP32_OFF32_LDFLAGS "-m32"
-#define __ILP32_OFFBIG_LDFLAGS "-m32"
+#if defined __x86_64__ && defined __ILP32__
+# define __ILP32_OFFBIG_CFLAGS "-mx32"
+# define __ILP32_OFFBIG_LDFLAGS "-mx32"
+#else
+# define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+# define __ILP32_OFFBIG_LDFLAGS "-m32"
+#endif
#define __LP64_OFF64_CFLAGS "-m64"
#define __LP64_OFF64_LDFLAGS "-m64"
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/procfs.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/procfs.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/procfs.h Fri Jan 11 00:01:41 2013
@@ -36,7 +36,7 @@
/* Type for a general-purpose register. */
#ifdef __x86_64__
-typedef unsigned long long elf_greg_t;
+__extension__ typedef unsigned long long elf_greg_t;
#else
typedef unsigned long elf_greg_t;
#endif
Modified: fsf/trunk/libc/sysdeps/x86/bits/setjmp.h
==============================================================================
--- fsf/trunk/libc/sysdeps/x86/bits/setjmp.h (original)
+++ fsf/trunk/libc/sysdeps/x86/bits/setjmp.h Fri Jan 11 00:01:41 2013
@@ -30,7 +30,7 @@
# if __WORDSIZE == 64
typedef long int __jmp_buf[8];
# elif defined __x86_64__
-typedef long long int __jmp_buf[8];
+__extension__ typedef long long int __jmp_buf[8];
# else
typedef int __jmp_buf[6];
# endif
Modified: fsf/trunk/libc/sysdeps/x86/fpu/bits/mathinline.h
==============================================================================
--- fsf/trunk/libc/sysdeps/x86/fpu/bits/mathinline.h (original)
+++ fsf/trunk/libc/sysdeps/x86/fpu/bits/mathinline.h Fri Jan 11 00:01:41 2013
@@ -198,6 +198,7 @@
}
# endif
# ifdef __x86_64__
+__extension__
__MATH_INLINE long long int
__NTH (llrintf (float __x))
{
@@ -209,6 +210,7 @@
__asm __volatile__ ("cvtss2si %1, %0" : "=r" (__res) : "xm" (__x));
return __res;
}
+__extension__
__MATH_INLINE long long int
__NTH (llrint (double __x))
{
@@ -896,16 +898,19 @@
("fistpll %0" \
: "=m" (__llrintres) : "t" (__x) : "st"); \
return __llrintres
+__extension__
__MATH_INLINE long long int
__NTH (llrintf (float __x))
{
__llrint_code;
}
+__extension__
__MATH_INLINE long long int
__NTH (llrint (double __x))
{
__llrint_code;
}
+__extension__
__MATH_INLINE long long int
__NTH (llrintl (long double __x))
{
Modified: fsf/trunk/libc/wcsmbs/wchar.h
==============================================================================
--- fsf/trunk/libc/wcsmbs/wchar.h (original)
+++ fsf/trunk/libc/wcsmbs/wchar.h Fri Jan 11 00:01:41 2013
@@ -475,7 +475,7 @@
__THROW;
__END_NAMESPACE_STD
-#if defined __USE_ISOC99 || (defined __GNUC__ && defined __USE_GNU)
+#ifdef __USE_ISOC99
__BEGIN_NAMESPACE_C99
/* Convert initial portion of wide string NPTR to `long long int'
representation. */
@@ -491,9 +491,9 @@
wchar_t **__restrict __endptr,
int __base) __THROW;
__END_NAMESPACE_C99
-#endif /* ISO C99 or GCC and GNU. */
-
-#if defined __GNUC__ && defined __USE_GNU
+#endif /* ISO C99. */
+
+#ifdef __USE_GNU
/* Convert initial portion of wide string NPTR to `long long int'
representation. */
__extension__
@@ -507,7 +507,7 @@
extern unsigned long long int wcstouq (const wchar_t *__restrict __nptr,
wchar_t **__restrict __endptr,
int __base) __THROW;
-#endif /* GCC and use GNU. */
+#endif /* Use GNU. */
#ifdef __USE_GNU
/* The concept of one static locale per category is not very well
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits