From: Iain Sandoe <iains.gcc@gmail.com>
To: dmalcolm@redhat.com, gcc-patches@gcc.gnu.org
Subject: [PATCH] testsuite, jit: Stabilize error output.
Date: Tue, 16 Jan 2024 11:12:13 +0000 [thread overview]
Message-ID: <20240116111213.42899-1-iain@sandoe.co.uk> (raw)
Tested on x86_64, i686 Darwin, x86_64 Linux,
OK for trunk? When?
thanks
Iain
--- 8< ---
Currently when a test fails, we print out a lot of information,
this includes items that are not stable between invocations (e.g.
the PID for the executable). That makes automated comparisons
between test runs flag any persistent fails as new ones each time
which is not usually what is wanted.
This patch amends the error output to drop the variable portion
of the message and retain items that should only change if the
failure mode changes.
gcc/testsuite/ChangeLog:
* jit.dg/jit.exp: Filter error output to remove per-run
variable content.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
---
gcc/testsuite/jit.dg/jit.exp | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/gcc/testsuite/jit.dg/jit.exp b/gcc/testsuite/jit.dg/jit.exp
index 286cfa8192a..893ff5f6dd0 100644
--- a/gcc/testsuite/jit.dg/jit.exp
+++ b/gcc/testsuite/jit.dg/jit.exp
@@ -94,25 +94,34 @@ proc parse_valgrind_logfile {name logfile} {
# unexpected exits.
proc verify_exit_status { executable wres } {
- lassign $wres pid spawnid os_error_flag value
+ set extra [lassign $wres pid spawnid os_error_flag value]
verbose "pid: $pid" 3
verbose "spawnid: $spawnid" 3
verbose "os_error_flag: $os_error_flag" 3
verbose "value: $value" 3
# Detect segfaults etc:
- if { [llength $wres] > 4 } {
- if { [lindex $wres 4] == "CHILDKILLED" } {
- fail "$executable killed: $wres"
+ set len [llength $extra]
+ if { $len >= 1 } {
+ if { [lindex $extra 0] == "CHILDKILLED" } {
+ set reason "Unknown Reason"
+ set detail "No Details"
+ if { $len >= 2 } {
+ set reason [lindex $extra 1]
+ if { $len >= 3 } {
+ set detail [lindex $extra 2]
+ }
+ }
+ fail "$executable killed: $reason $detail"
return
}
}
if { $os_error_flag != 0 } {
- fail "$executable: OS error: $wres"
+ fail "$executable: OS error: $os_error_flag $extra"
return
}
if { $value != 0 } {
- fail "$executable: non-zero exit code: $wres"
+ fail "$executable: non-zero exit code: $value $extra"
return
}
pass "$executable exited cleanly"
--
2.39.2 (Apple Git-143)
next reply other threads:[~2024-01-16 11:12 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-16 11:12 Iain Sandoe [this message]
2024-01-22 8:24 ` Iain Sandoe
2024-01-24 18:46 ` David Malcolm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240116111213.42899-1-iain@sandoe.co.uk \
--to=iains.gcc@gmail.com \
--cc=dmalcolm@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=iain@sandoe.co.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).