public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] gdb.base/gnu_vector.exp: Don't test output from the inferior
@ 2015-11-09 15:34 Yao Qi
  2015-11-13 15:04 ` Yao Qi
  0 siblings, 1 reply; 2+ messages in thread
From: Yao Qi @ 2015-11-09 15:34 UTC (permalink / raw)
  To: gdb-patches

gdb.base/gnu_vector.c printf the vector and gdb.base/gnu_vector.exp
expects the output by gdb_test_multiple.  Nowadays, the test doesn't
expect the output from inferior_spawn_id, which is wrong.  Even we
change the test to expect from inferior_spawn_id for the inferior
output, it is still possible the inferior exit before tcl/expect gets
the inferior output.  We see this fail on both s390x-linux and
ppc-linux on buildbot,

  FAIL: gdb.base/gnu_vector.exp: verify vector return value (the program exited)

https://sourceware.org/ml/gdb-testers/2015-q4/msg04922.html
https://sourceware.org/ml/gdb-testers/2015-q4/msg04952.html

In order to address these two shortcomings above in gnu_vector.exp,
this patch rewrites the test a little bit.  Get rid of checking the
inferior output, and instead checking them by printing them.  In this
way, the test can also be run on the target without inferior io
(gdb,noinferiorio is set in the board file).

gdb/testsuite:

2015-11-09  Yao Qi  <yao.qi@linaro.org>

	* gdb.base/gnu_vector.exp: Check the return value by "p res".
	* gdb.base/gnu_vector.c: Don't include stdio.h.
	(main): Don't print res and call add_some_intvecs.
---
 gdb/testsuite/gdb.base/gnu_vector.c   |  5 ++---
 gdb/testsuite/gdb.base/gnu_vector.exp | 23 +++++++++--------------
 2 files changed, 11 insertions(+), 17 deletions(-)

diff --git a/gdb/testsuite/gdb.base/gnu_vector.c b/gdb/testsuite/gdb.base/gnu_vector.c
index 4e505d1..b6ed9f7 100644
--- a/gdb/testsuite/gdb.base/gnu_vector.c
+++ b/gdb/testsuite/gdb.base/gnu_vector.c
@@ -18,7 +18,6 @@
    Contributed by Ken Werner <ken.werner@de.ibm.com>  */
 
 #include <stdarg.h>
-#include <stdio.h>
 
 #define VECTOR(n, type)					\
   type __attribute__ ((vector_size (n * sizeof(type))))
@@ -139,10 +138,10 @@ main ()
   int4 res;
 
   res = add_some_intvecs (i4a, i4a + i4b, i4b);
-  printf ("%d %d %d %d\n", res[0], res[1], res[2], res[3]);
 
   res = add_some_intvecs (i4a, i4a + i4b, i4b);
-  printf ("%d %d %d %d\n", res[0], res[1], res[2], res[3]);
+
+  add_some_intvecs (i4a, i4a + i4b, i4b);
 
   return 0;
 }
diff --git a/gdb/testsuite/gdb.base/gnu_vector.exp b/gdb/testsuite/gdb.base/gnu_vector.exp
index 09593d2..ba35ab5 100644
--- a/gdb/testsuite/gdb.base/gnu_vector.exp
+++ b/gdb/testsuite/gdb.base/gnu_vector.exp
@@ -216,8 +216,13 @@ gdb_test_multiple "finish" $test {
     }
 }
 
-# Test "return" from vector-valued function.
 gdb_continue "add_some_intvecs"
+gdb_test "up" ""
+gdb_test "p res" "\\{10, 20, 48, 72\\}.*"
+gdb_test "down" ""
+
+
+# Test "return" from vector-valued function.
 set test "return from vector-valued function"
 set should_kfail 0
 gdb_test_multiple "return (int4) \{4, 2, 7, 6\}" $test {
@@ -233,16 +238,6 @@ gdb_test_multiple "return (int4) \{4, 2, 7, 6\}" $test {
 	exp_continue
     }
 }
-set test "verify vector return value"
-gdb_test_multiple "continue" $test {
-    -re "4 2 7 6\r\n.*$gdb_prompt $" {
-	pass $test
-    }
-    -re "10 20 48 72\r\n.*$gdb_prompt $" {
-	if { $should_kfail } {
-	    kfail "gdb/8549" $test
-	} else {
-	    fail $test
-	}
-    }
-}
+
+gdb_test "next" ""
+gdb_test "p res" "\\{4, 2, 7, 6\\}.*" "verify vector return value"
-- 
1.9.1

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] gdb.base/gnu_vector.exp: Don't test output from the inferior
  2015-11-09 15:34 [PATCH] gdb.base/gnu_vector.exp: Don't test output from the inferior Yao Qi
@ 2015-11-13 15:04 ` Yao Qi
  0 siblings, 0 replies; 2+ messages in thread
From: Yao Qi @ 2015-11-13 15:04 UTC (permalink / raw)
  To: Yao Qi; +Cc: gdb-patches

Yao Qi <qiyaoltc@gmail.com> writes:

> gdb/testsuite:
>
> 2015-11-09  Yao Qi  <yao.qi@linaro.org>
>
> 	* gdb.base/gnu_vector.exp: Check the return value by "p res".
> 	* gdb.base/gnu_vector.c: Don't include stdio.h.
> 	(main): Don't print res and call add_some_intvecs.

Patch is pushed in.

-- 
Yao (齐尧)

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-11-13 15:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-09 15:34 [PATCH] gdb.base/gnu_vector.exp: Don't test output from the inferior Yao Qi
2015-11-13 15:04 ` Yao Qi

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).