diff mbox series

[GCC/testsuite] Fix FAIL display for some scan-*-times directives

Message ID ed63ea4f-4016-36f8-4c30-5e75943dfd5d@foss.arm.com
State New
Headers show
Series [GCC/testsuite] Fix FAIL display for some scan-*-times directives | expand

Commit Message

Thomas Preudhomme March 13, 2018, 5:12 p.m. UTC
Hi,

scan-assembler-times and scan-tree-dump-times dejagnu directives show a
different output in the summary files depending on whether they PASS or
FAIL. This means that dg-cmp-results would not show a regression because
it would not see a connection between the two output.

The difference comes from the FAIL showing the number of actual times
the pattern was match, presumably to help debugging. This patch moves
the info regarding the actual number of times the pattern match in a
separate verbose message. This keeps the message unchanged but let
developers have the required debug message with -v.

ChangeLog entry is as follows:

*** gcc/testsuite/ChangeLog ***

2018-03-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* lib/scanasm.exp (scan-assembler-times): Move FAIL debug info into a
	separate verbose message.
	* lib/scandump.exp (scan-dump-times): Likewise.

Testing: Made a modified version of gcc.dg/nand.c and
gcc.dg/torture/pr61772.c to FAIL their scan-assembler-times and
scan-tree-dump-times respective directives. Without the patch
dg-cmp-results does not flag any regression but does with the patch.

Is this ok for stage 4?

Best regards,

Thomas

Comments

Mike Stump March 14, 2018, 1:58 a.m. UTC | #1
On Mar 13, 2018, at 10:12 AM, Thomas Preudhomme <thomas.preudhomme@foss.arm.com> wrote:
> 
> scan-assembler-times and scan-tree-dump-times dejagnu directives show a
> different output in the summary files depending on whether they PASS or
> FAIL. This means that dg-cmp-results would not show a regression because
> it would not see a connection between the two output.

> 2018-03-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>
> 
> 	* lib/scanasm.exp (scan-assembler-times): Move FAIL debug info into a
> 	separate verbose message.
> 	* lib/scandump.exp (scan-dump-times): Likewise.

> Is this ok for stage 4?

Yes, please.  If broken on release branches, should be safe (if you regression test it of course) to move back, if you want.
diff mbox series

Patch

diff --git a/gcc/testsuite/lib/scanasm.exp b/gcc/testsuite/lib/scanasm.exp
index 3a775b0a812775193cf1181337a5b890cde74133..61e0f3f48aeea5785689c5df7a15dc2ccbc71029 100644
--- a/gcc/testsuite/lib/scanasm.exp
+++ b/gcc/testsuite/lib/scanasm.exp
@@ -266,7 +266,8 @@  proc scan-assembler-times { args } {
     if {$result_count == $times} {
 	pass "$testcase scan-assembler-times $pp_pattern $times"
     } else {
-	fail "$testcase scan-assembler-times $pp_pattern $times (found $result_count times)"
+	verbose -log "$testcase: $pp_pattern found $result_count times"
+	fail "$testcase scan-assembler-times $pp_pattern $times"
     }
 }
 
diff --git a/gcc/testsuite/lib/scandump.exp b/gcc/testsuite/lib/scandump.exp
index 4e3da972ae4ed09c9874eb384daf825e6e2dcde3..be8fbe8b461dc81d5683fe323c0913f678daa1e0 100644
--- a/gcc/testsuite/lib/scandump.exp
+++ b/gcc/testsuite/lib/scandump.exp
@@ -110,7 +110,8 @@  proc scan-dump-times { args } {
     if {$result_count == $times} {
         pass "$testname"
     } else {
-        fail "$testname (found $result_count times)"
+	verbose -log "$testcase: pattern found $result_count times"
+        fail "$testname"
     }
 }