You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
3.4 KiB
106 lines
3.4 KiB
6 years ago
|
commit 77ae9c1933b5007fdcbd222b0eaa2d775ea6ae43
|
||
|
Author: Yao Qi <yao.qi@linaro.org>
|
||
|
Date: Fri Nov 13 15:03:25 2015 +0000
|
||
|
|
||
|
gdb.base/gnu_vector.exp: Don't test output from the inferior
|
||
|
|
||
|
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-13 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.
|
||
|
|
||
|
### a/gdb/testsuite/ChangeLog
|
||
|
### b/gdb/testsuite/ChangeLog
|
||
|
## -1,3 +1,9 @@
|
||
|
+2015-11-13 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.
|
||
|
+
|
||
|
2015-11-11 Marcin Kościelnicki <koriakin@0x04.net>
|
||
|
|
||
|
* gdb.trace/change-loc.h: include "trace-common.h", remove SYMBOL
|
||
|
--- 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;
|
||
|
}
|
||
|
--- 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"
|