[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r23315 - in /fsf/trunk/libc: ./ manual/ math/ nptl/sysdeps/powerpc/ ports/ ports/sysdeps/arm/ scripts/ sysdeps/mach/hurd/
- To: commits@xxxxxxxxxx
- Subject: [Commits] r23315 - in /fsf/trunk/libc: ./ manual/ math/ nptl/sysdeps/powerpc/ ports/ ports/sysdeps/arm/ scripts/ sysdeps/mach/hurd/
- From: eglibc@xxxxxxxxxx
- Date: Tue, 18 Jun 2013 00:02:03 -0000
Author: eglibc
Date: Tue Jun 18 00:02:02 2013
New Revision: 23315
Log:
Import glibc-mainline for 2013-06-18
Added:
fsf/trunk/libc/scripts/sysd-rules.awk
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/Makerules
fsf/trunk/libc/NEWS
fsf/trunk/libc/configure
fsf/trunk/libc/configure.in
fsf/trunk/libc/manual/install.texi
fsf/trunk/libc/math/test-misc.c
fsf/trunk/libc/nptl/sysdeps/powerpc/tls.h
fsf/trunk/libc/ports/ChangeLog.arm
fsf/trunk/libc/ports/sysdeps/arm/feenablxcpt.c
fsf/trunk/libc/sysdeps/mach/hurd/Makefile
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Tue Jun 18 00:02:02 2013
@@ -1,3 +1,27 @@
+2013-06-17 Adhemerval Zanella <azanella@xxxxxxxxxxxxxxxxxx>
+
+ * nptl/sysdeps/powerpc/tls.h (tcbhead_t): Add Event-Based Branch
+ fields.
+
+2013-06-17 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * scripts/sysd-rules.awk: Sort sysd_rules_patterns by descending
+ length of target pattern, then descending length of dependency pattern.
+ * configure.in (AWK): Require gawk 3.1.2 or newer.
+ * manual/install.texi (Tools for Compilation): Say that we do.
+ * configure: Regenerated.
+
+ * Makerules [inhibit-sysdep-asm] (check-inhibit-asm): Variable removed.
+ ($(common-objpfx)sysd-rules): Replace shell logic with running ...
+ * scripts/sysd-rules.awk: ... this new script.
+ * sysdeps/mach/hurd/Makefile (inhibit-sysdep-asm): Use a regexp rather
+ than a glob-style pattern.
+
+2013-06-17 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * math/test-misc.c (main): Do not treat incorrectly rounded
+ conversions as failure unless ROUNDING_TESTS passes.
+
2013-06-15 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
[BZ #15631]
Modified: fsf/trunk/libc/Makerules
==============================================================================
--- fsf/trunk/libc/Makerules (original)
+++ fsf/trunk/libc/Makerules Tue Jun 18 00:02:02 2013
@@ -217,14 +217,9 @@
# later directory would be chosen over a .c file in an earlier directory,
# which does not preserve the desired sysdeps ordering behavior.
-# System-dependent makefiles can put in `inhibit-sysdep-asm' wildcard
-# patterns matching sysdep directories whose assembly source files should
-# be suppressed.
-ifdef inhibit-sysdep-asm
-define check-inhibit-asm
-case $$sysdir in $(subst $(empty) ,|,$(inhibit-sysdep-asm))) asm= ;; esac;
-endef
-endif
+# System-dependent makefiles can put in `inhibit-sysdep-asm' regexps
+# matching sysdep directories whose assembly source files should be
+# suppressed.
-include $(common-objpfx)sysd-rules
ifneq ($(sysd-rules-sysdirs),$(config-sysdirs))
@@ -233,34 +228,16 @@
sysd-rules-force = FORCE
FORCE:
endif
-$(common-objpfx)sysd-rules: $(common-objpfx)config.make $(..)Makerules \
+$(common-objpfx)sysd-rules: $(..)scripts/sysd-rules.awk \
+ $(common-objpfx)config.make $(..)Makerules \
$(sysdep-makefiles) $(sysdep-makeconfigs) \
$(sysd-rules-force)
-@rm -f $@T
- (echo 'sysd-rules-sysdirs := $(config-sysdirs)'; \
- for dir in $(config-sysdirs); do \
- case "$$dir" in \
- /*) ;; \
- *) dir="\$$(..)$$dir" ;; \
- esac; \
- asm='.S'; \
- $(check-inhibit-asm) \
- for o in $(all-object-suffixes); do \
- set $(subst :, ,$(sysd-rules-patterns)); \
- while [ $$# -ge 2 ]; do \
- t=$$1; shift; \
- d=$$1; shift; \
- v=$${t%%%}; [ x"$$v" = x ] || v="\$$($${v}CPPFLAGS)"; \
- for s in $$asm .c; do \
- echo "\$$(objpfx)$$t$$o: $$dir/$$d$$s \$$(before-compile)"; \
- echo " \$$(compile-command$$s) $$v"; \
- done; \
- done; \
- done; \
- echo "\$$(inst_includedir)/%.h: $$dir/%.h \$$(+force)"; \
- echo " \$$(do-install)"; \
- done; \
- echo 'sysd-rules-done = t') > $@T
+ LC_ALL=C $(AWK) -f $< > $@T \
+ -v all_object_suffixes='$(all-object-suffixes)' \
+ -v inhibit_sysdep_asm='$(inhibit-sysdep-asm)' \
+ -v sysd_rules_patterns='$(sysd-rules-patterns)' \
+ -v config_sysdirs='$(config-sysdirs)'
mv -f $@T $@
ifndef sysd-rules-done
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Tue Jun 18 00:02:02 2013
@@ -12,15 +12,15 @@
2546, 2560, 5159, 6809, 10060, 10062, 10357, 10686, 11120, 11561, 12387,
12515, 12723, 13550, 13889, 13951, 13988, 14142, 14176, 14200, 14256,
14280, 14293, 14317, 14327, 14478, 14496, 14582, 14686, 14812, 14888,
- 14894, 14908, 14909, 14920, 14952, 14964, 14981, 14982, 14985, 14991,
- 14994, 14996, 15000, 15003, 15006, 15007, 15014, 15020, 15023, 15036,
- 15054, 15055, 15062, 15078, 15084, 15085, 15086, 15100, 15160, 15214,
- 15221, 15232, 15234, 15283, 15285, 15287, 15304, 15305, 15307, 15309,
- 15327, 15330, 15335, 15336, 15337, 15339, 15342, 15346, 15359, 15361,
- 15366, 15380, 15381, 15394, 15395, 15405, 15406, 15409, 15416, 15418,
- 15419, 15423, 15424, 15426, 15429, 15431, 15432, 15441, 15442, 15448,
- 15465, 15480, 15485, 15488, 15490, 15492, 15493, 15497, 15506, 15529,
- 15536, 15553, 15577, 15583, 15618, 15627, 15631.
+ 14894, 14907, 14908, 14909, 14920, 14952, 14964, 14981, 14982, 14985,
+ 14991, 14994, 14996, 15000, 15003, 15006, 15007, 15014, 15020, 15023,
+ 15036, 15054, 15055, 15062, 15078, 15084, 15085, 15086, 15100, 15160,
+ 15214, 15221, 15232, 15234, 15283, 15285, 15287, 15304, 15305, 15307,
+ 15309, 15327, 15330, 15335, 15336, 15337, 15339, 15342, 15346, 15359,
+ 15361, 15366, 15380, 15381, 15394, 15395, 15405, 15406, 15409, 15416,
+ 15418, 15419, 15423, 15424, 15426, 15429, 15431, 15432, 15441, 15442,
+ 15448, 15465, 15480, 15485, 15488, 15490, 15492, 15493, 15497, 15506,
+ 15529, 15536, 15553, 15577, 15583, 15618, 15627, 15631.
* CVE-2013-0242 Buffer overrun in regexp matcher has been fixed (Bugzilla
#15078).
Modified: fsf/trunk/libc/configure
==============================================================================
--- fsf/trunk/libc/configure (original)
+++ fsf/trunk/libc/configure Tue Jun 18 00:02:02 2013
@@ -4993,7 +4993,7 @@
ac_prog_version=`$AWK --version 2>&1 | sed -n 's/^.*GNU Awk[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- [3-9].*)
+ 3.1.[2-9]*|3.[2-9]*|[4-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
Modified: fsf/trunk/libc/configure.in
==============================================================================
--- fsf/trunk/libc/configure.in (original)
+++ fsf/trunk/libc/configure.in Tue Jun 18 00:02:02 2013
@@ -986,7 +986,7 @@
SED=: aux_missing="$aux_missing sed")
AC_CHECK_PROG_VER(AWK, gawk, --version,
[GNU Awk[^0-9]*\([0-9][0-9.]*\)],
- [[3-9].*], critic_missing="$critic_missing gawk")
+ [3.1.[2-9]*|3.[2-9]*|[4-9]*], critic_missing="$critic_missing gawk")
AC_CHECK_TOOL(NM, nm, false)
Modified: fsf/trunk/libc/manual/install.texi
==============================================================================
--- fsf/trunk/libc/manual/install.texi (original)
+++ fsf/trunk/libc/manual/install.texi Tue Jun 18 00:02:02 2013
@@ -379,10 +379,11 @@
mechanism for the info files is not present or works differently.
@item
-GNU @code{awk} 3.0, or higher
-
-@code{Awk} is used in several places to generate files.
-@code{gawk} 3.0 is known to work.
+GNU @code{awk} 3.1.2, or higher
+
+@code{awk} is used in several places to generate files.
+Some @code{gawk} extensions are used, including the @code{asorti}
+function, which was introduced in version 3.1.2 of @code{gawk}.
@item
Perl 5
Modified: fsf/trunk/libc/math/test-misc.c
==============================================================================
--- fsf/trunk/libc/math/test-misc.c (original)
+++ fsf/trunk/libc/math/test-misc.c Tue Jun 18 00:02:02 2013
@@ -1306,7 +1306,11 @@
{
printf ("%La incorrectly rounded to %s as %a\n",
ld5 * i, mstr, d5);
- result = 1;
+ if (ROUNDING_TESTS (long double, mode)
+ && ROUNDING_TESTS (double, mode))
+ result = 1;
+ else
+ puts ("ignoring this failure");
}
}
}
@@ -1322,7 +1326,11 @@
if (d7 != nextafter (0.0, 1.0))
{
printf ("%La incorrectly rounded upward to %a\n", ld7, d7);
- result = 1;
+ if (ROUNDING_TESTS (long double, FE_UPWARD)
+ && ROUNDING_TESTS (double, FE_UPWARD))
+ result = 1;
+ else
+ puts ("ignoring this failure");
}
#endif
Modified: fsf/trunk/libc/nptl/sysdeps/powerpc/tls.h
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/powerpc/tls.h (original)
+++ fsf/trunk/libc/nptl/sysdeps/powerpc/tls.h Tue Jun 18 00:02:02 2013
@@ -61,6 +61,11 @@
are private. */
typedef struct
{
+ /* Reservation for the Event-Based Branching ABI. */
+ uintptr_t ebb_handler;
+ uintptr_t ebb_ctx_pointer;
+ uintptr_t ebb_reserved1;
+ uintptr_t ebb_reserved2;
uintptr_t pointer_guard;
uintptr_t stack_guard;
dtv_t *dtv;
Modified: fsf/trunk/libc/ports/ChangeLog.arm
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.arm (original)
+++ fsf/trunk/libc/ports/ChangeLog.arm Tue Jun 18 00:02:02 2013
@@ -1,3 +1,9 @@
+2013-06-17 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ [BZ #14907]
+ * sysdeps/arm/feenablxcpt.c (feenableexcept): Test whether all
+ requested exception traps were enabled and return -1 if not.
+
2013-06-15 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
* sysdeps/unix/sysv/linux/arm/nptl/libpthread.abilist: Update.
Modified: fsf/trunk/libc/ports/sysdeps/arm/feenablxcpt.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/arm/feenablxcpt.c (original)
+++ fsf/trunk/libc/ports/sysdeps/arm/feenablxcpt.c Tue Jun 18 00:02:02 2013
@@ -39,6 +39,18 @@
_FPU_SETCW(new_exc);
+ if (excepts != 0)
+ {
+ /* VFPv3 and VFPv4 do not support trapping exceptions, so
+ test whether the relevant bits were set and fail if
+ not. */
+ unsigned int temp;
+ _FPU_GETCW (temp);
+ if ((temp & (excepts << FE_EXCEPT_SHIFT))
+ != (excepts << FE_EXCEPT_SHIFT))
+ return -1;
+ }
+
return old_exc;
}
Added: fsf/trunk/libc/scripts/sysd-rules.awk
==============================================================================
--- fsf/trunk/libc/scripts/sysd-rules.awk (added)
+++ fsf/trunk/libc/scripts/sysd-rules.awk Tue Jun 18 00:02:02 2013
@@ -1,0 +1,76 @@
+# This is a GAWK script to generate the sysd-rules file.
+# It does not read any input, but it requires that several variables
+# be set on its command line (using -v) to their makefile counterparts:
+# all_object_suffixes $(all-object-suffixes)
+# inhibit_sysdep_asm $(inhibit-sysdep-asm)
+# config_sysdirs $(config_sysdirs)
+# sysd_rules_patterns $(sysd-rules-patterns)
+
+BEGIN {
+ print "sysd-rules-sysdirs :=", config_sysdirs;
+
+ nsuffixes = split(all_object_suffixes, suffixes);
+ ninhibit_asm = split(inhibit_sysdep_asm, inhibit_asm);
+ nsysdirs = split(config_sysdirs, sysdirs);
+ npatterns = split(sysd_rules_patterns, patterns);
+
+ # Each element of $(sysd-rules-patterns) is a pair TARGET:DEP.
+ # They are no in particular order. We need to sort them so that
+ # the longest TARGET is first, and, among elements with the same
+ # TARGET, the longest DEP is first.
+ for (i = 1; i <= npatterns; ++i) {
+ if (split(patterns[i], td, ":") != 2) {
+ msg = "bad sysd-rules-patterns element '" patterns[i] "'";
+ print msg > "/dev/stderr";
+ exit 2;
+ }
+ target_order = sprintf("%09d", npatterns + 1 - length(td[1]));
+ dep_order = sprintf("%09d", npatterns - length(td[2]));
+ sort_patterns[target_order SUBSEP dep_order] = patterns[i];
+ }
+ asorti(sort_patterns, map_patterns);
+ for (i in map_patterns) {
+ patterns[i] = sort_patterns[map_patterns[i]];
+ }
+
+ for (sysdir_idx = 1; sysdir_idx <= nsysdirs; ++sysdir_idx) {
+ dir = sysdirs[sysdir_idx];
+ if (dir !~ /^\//) dir = "$(..)" dir;
+ asm_rules = 1;
+ for (i = 1; i <= ninhibit_asm; ++i) {
+ if (dir ~ ("^.*sysdeps/" inhibit_asm[i] "$")) {
+ asm_rules = 0;
+ break;
+ }
+ }
+ for (suffix_idx = 1; suffix_idx <= nsuffixes; ++suffix_idx) {
+ o = suffixes[suffix_idx];
+ for (pattern_idx = 1; pattern_idx <= npatterns; ++pattern_idx) {
+ pattern = patterns[pattern_idx];
+ split(pattern, td, ":");
+ target_pattern = td[1];
+ dep_pattern = td[2];
+ if (target_pattern == "%") {
+ command_suffix = "";
+ } else {
+ prefix = gensub(/%/, "", "", target_pattern);
+ command_suffix = " $(" prefix "CPPFLAGS)";
+ }
+ target = "$(objpfx)" target_pattern o ":";
+ if (asm_rules) {
+ dep = dir "/" dep_pattern ".S";
+ print target, dep, "$(before-compile)";
+ print "\t$(compile-command.S)" command_suffix;
+ }
+ dep = dir "/" dep_pattern ".c";
+ print target, dep, "$(before-compile)";
+ print "\t$(compile-command.c)" command_suffix;
+ }
+ }
+ print "$(inst_includedir)/%.h:", dir "/%.h", "$(+force)";
+ print "\t$(do-install)";
+ }
+
+ print "sysd-rules-done := t";
+ exit 0;
+}
Modified: fsf/trunk/libc/sysdeps/mach/hurd/Makefile
==============================================================================
--- fsf/trunk/libc/sysdeps/mach/hurd/Makefile (original)
+++ fsf/trunk/libc/sysdeps/mach/hurd/Makefile Tue Jun 18 00:02:02 2013
@@ -28,7 +28,7 @@
# Do not use any assembly code from sysdeps/unix (and subdirectories).
# This bypasses all the system call stubs and uses any existing posix or
# generic C files instead.
-inhibit-sysdep-asm += unix*
+inhibit-sysdep-asm += unix.*
inhibit-unix-syscalls = yes
# Don't try to generate anything from the installed Unix system and its
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits