contrib/dg-extract-results: Handle timeout warnings
2019-02-04 Christophe Lyon <christophe.lyon@linaro.org> contrib/ * dg-extract-results.py: Keep timeout warnings next to their matching test. * dg-extract-results.sh: Likewise. From-SVN: r268511
This commit is contained in:
parent
c8df72c446
commit
f874089d31
3 changed files with 49 additions and 7 deletions
|
@ -1,3 +1,10 @@
|
|||
2019-02-04 Christophe Lyon <christophe.lyon@linaro.org>
|
||||
|
||||
contrib/
|
||||
* dg-extract-results.py: Keep timeout warnings next to their
|
||||
matching test.
|
||||
* dg-extract-results.sh: Likewise.
|
||||
|
||||
2019-01-01 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* update-copyright.py: Add Gerard Jungman as external author.
|
||||
|
|
|
@ -239,6 +239,7 @@ class Prog:
|
|||
harness = None
|
||||
segment = None
|
||||
final_using = 0
|
||||
has_warning = 0
|
||||
|
||||
# If this is the first run for this variation, add any text before
|
||||
# the first harness to the header.
|
||||
|
@ -292,8 +293,20 @@ class Prog:
|
|||
# Ugly hack to get the right order for gfortran.
|
||||
if name.startswith ('gfortran.dg/g77/'):
|
||||
name = 'h' + name
|
||||
key = (name, len (harness.results))
|
||||
harness.results.append ((key, line))
|
||||
# If we have a time out warning, make sure it appears
|
||||
# before the following testcase diagnostic: we insert
|
||||
# the testname before 'program' so that sort faces a
|
||||
# list of testhanes.
|
||||
if line.startswith ('WARNING: program timed out'):
|
||||
has_warning = 1
|
||||
else:
|
||||
if has_warning == 1:
|
||||
key = (name, len (harness.results))
|
||||
myline = 'WARNING: %s program timed out.\n' % name
|
||||
harness.results.append ((key, myline))
|
||||
has_warning = 0
|
||||
key = (name, len (harness.results))
|
||||
harness.results.append ((key, line))
|
||||
if not first_key and sort_logs:
|
||||
first_key = key
|
||||
if line.startswith ('ERROR: (DejaGnu)'):
|
||||
|
|
|
@ -298,6 +298,8 @@ BEGIN {
|
|||
cnt=0
|
||||
print_using=0
|
||||
need_close=0
|
||||
has_timeout=0
|
||||
timeout_cnt=0
|
||||
}
|
||||
/^EXPFILE: / {
|
||||
expfiles[expfileno] = \$2
|
||||
|
@ -329,16 +331,36 @@ BEGIN {
|
|||
# Ugly hack for gfortran.dg/dg.exp
|
||||
if ("$TOOL" == "gfortran" && testname ~ /^gfortran.dg\/g77\//)
|
||||
testname="h"testname
|
||||
if (\$1 == "WARNING:" && \$2 == "program" && \$3 == "timed" && (\$4 == "out" || \$4 == "out.")) {
|
||||
has_timeout=1
|
||||
timeout_cnt=cnt
|
||||
} else {
|
||||
# Prepare timeout replacement message in case it's needed
|
||||
timeout_msg=\$0
|
||||
sub(\$1, "WARNING:", timeout_msg)
|
||||
}
|
||||
}
|
||||
/^$/ { if ("$MODE" == "sum") next }
|
||||
{ if (variant == curvar && curfile) {
|
||||
if ("$MODE" == "sum") {
|
||||
printf "%s %08d|", testname, cnt >> curfile
|
||||
cnt = cnt + 1
|
||||
# Do not print anything if the current line is a timeout
|
||||
if (has_timeout == 0) {
|
||||
# If the previous line was a timeout,
|
||||
# insert the full current message without keyword
|
||||
if (timeout_cnt != 0) {
|
||||
printf "%s %08d|%s program timed out.\n", testname, timeout_cnt, timeout_msg >> curfile
|
||||
timeout_cnt = 0
|
||||
}
|
||||
printf "%s %08d|", testname, cnt >> curfile
|
||||
cnt = cnt + 1
|
||||
filewritten[curfile]=1
|
||||
need_close=1
|
||||
if (timeout_cnt == 0)
|
||||
print >> curfile
|
||||
}
|
||||
|
||||
has_timeout=0
|
||||
}
|
||||
filewritten[curfile]=1
|
||||
need_close=1
|
||||
print >> curfile
|
||||
} else
|
||||
next
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue