summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-27 19:11:23 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-27 19:11:23 +0000
commitf4ebb544899fdd8148082a2f9b505c862654ebd2 (patch)
tree4bacee12efc59a4042926285318fd3d24caf3da9
parent56c7bfc2cd30535e7ea68a43e1135985de900a0b (diff)
downloadgcc-f4ebb544899fdd8148082a2f9b505c862654ebd2.tar.gz
PR testsuite/39807
* dg-extract-results.sh: Close open files and use >> instead of > to decrease number of concurrently open files from awk. Avoid = at the beginning of a regexp and redirect to a file determined by curfile variable rather than concatenated strings to workaround Solaris nawk bug. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146850 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--contrib/ChangeLog9
-rwxr-xr-xcontrib/dg-extract-results.sh29
2 files changed, 27 insertions, 11 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index b4c315bc5df..6ab29eb71d9 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,12 @@
+2009-04-27 Jakub Jelinek <jakub@redhat.com>
+
+ PR testsuite/39807
+ * dg-extract-results.sh: Close open files and use >> instead of >
+ to decrease number of concurrently open files from awk. Avoid
+ = at the beginning of a regexp and redirect to a file determined
+ by curfile variable rather than concatenated strings to workaround
+ Solaris nawk bug.
+
2009-04-25 Gerald Pfeifer <gerald@pfeifer.com>
* test_summary: Only include LAST_UPDATED if it exists.
diff --git a/contrib/dg-extract-results.sh b/contrib/dg-extract-results.sh
index 75ae38f70e8..518c19f6bee 100755
--- a/contrib/dg-extract-results.sh
+++ b/contrib/dg-extract-results.sh
@@ -6,7 +6,7 @@
# The resulting file can be used with test result comparison scripts for
# results from tests that were run in parallel. See usage() below.
-# Copyright (C) 2008 Free Software Foundation
+# Copyright (C) 2008, 2009 Free Software Foundation
# Contributed by Janis Johnson <janis187@us.ibm.com>
#
# This file is part of GCC.
@@ -148,26 +148,28 @@ if [ "$TOOL" = acats ]; then
ACATS_AWK=${TMP}/acats.awk
cat <<EOF > $ACATS_AWK
BEGIN {
- print_prologue=1; chapter=""; insummary=0
+ print_prologue=1; curfile=""; insummary=0
passcnt=0; failcnt=0; unsupcnt=0; failures=""
}
-/=== acats configuration ===/ {
+/^[ \t]*=== acats configuration ===/ {
insummary=0
if (print_prologue) print
next
}
-/=== acats tests ===/ {
+/^[ \t]*=== acats tests ===/ {
if (print_prologue) print
print_prologue=0
next
}
/^Running chapter / {
- chapter=\$3
- print > "${TMP}/chapter-"chapter
+ if (curfile) close (curfile)
+ curfile="${TMP}/chapter-"\$3
+ print >> curfile
next
}
-/=== acats Summary ===/ {
- chapter=""
+/^[ \t]*=== acats Summary ===/ {
+ if (curfile) close (curfile)
+ curfile=""
insummary=1
next
}
@@ -182,7 +184,7 @@ BEGIN {
}
{
if (print_prologue) { print; next }
- if (chapter) print > "${TMP}/chapter-"chapter
+ if (curfile) print >> curfile
}
END {
system ("cat ${TMP}/chapter-*")
@@ -194,6 +196,7 @@ END {
}
EOF
+ rm -f ${TMP}/chapter-*
$AWK -f $ACATS_AWK $SUM_FILES
exit 0
fi
@@ -270,6 +273,7 @@ BEGIN {
expfileno=1
cnt=0
print_using=0
+ need_close=0
}
/^EXPFILE: / {
expfiles[expfileno] = \$2
@@ -287,8 +291,10 @@ BEGIN {
/^Running / {
print_using=0
if (variant == curvar) {
+ if (need_close) close(curfile)
curfile="${TMP}/list"expfilesr[\$2]
expfileseen[\$2]=expfileseen[\$2] + 1
+ need_close=0
testname="00"
next
}
@@ -303,11 +309,12 @@ BEGIN {
/^$/ { if ("$MODE" == "sum") next }
{ if (variant == curvar && curfile) {
if ("$MODE" == "sum") {
- printf "%s %08d|", testname, cnt > curfile
+ printf "%s %08d|", testname, cnt >> curfile
cnt = cnt + 1
}
filewritten[curfile]=1
- print > curfile
+ need_close=1
+ print >> curfile
} else
next
}