[PATCH 1/2] New proc supports_get_siginfo_type

Yao Qi
2015-06-22T11:03:50Z

Both siginfo-obj.exp and siginfo-thread.exp have the same code
checking the support of geting a type of siginfo for a given arch.
This patch is to move these code into a proc supports_get_siginfo_type.

gdb/testsuite:

2015-06-22 Yao Qi <yao.qi@linaro.org>

* lib/gdb.exp (supports_get_siginfo_type): New proc.
* gdb.base/siginfo-obj.exp: Invoke supports_get_siginfo_type.
* gdb.base/siginfo-thread.exp: Likewise.
---
gdb/testsuite/gdb.base/siginfo-obj.exp | 4 +---
gdb/testsuite/gdb.base/siginfo-thread.exp | 4 +---
gdb/testsuite/lib/gdb.exp | 13 +++++++++++++
3 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/gdb/testsuite/gdb.base/siginfo-obj.exp b/gdb/testsuite/gdb.base/siginfo-obj.exp
index 0d1b96d..578c12e 100644
--- a/gdb/testsuite/gdb.base/siginfo-obj.exp
+++ b/gdb/testsuite/gdb.base/siginfo-obj.exp
@@ -26,9 +26,7 @@ if [target_info exists gdb,nosignals] {
continue
}

-if { ! [istarget "i?86-*-linux*"]
- && ! [istarget "x86_64-*-linux*"]
- && ! [istarget "arm*-*-linux*"] } {
+if { ![supports_get_siginfo_type] } {
verbose "Skipping siginfo-obj.exp because of lack of support."
return
}
diff --git a/gdb/testsuite/gdb.base/siginfo-thread.exp b/gdb/testsuite/gdb.base/siginfo-thread.exp
index 638bef3..a00b5aa 100644
--- a/gdb/testsuite/gdb.base/siginfo-thread.exp
+++ b/gdb/testsuite/gdb.base/siginfo-thread.exp
@@ -21,9 +21,7 @@ if [target_info exists gdb,nosignals] {
continue
}

-if { ! [istarget "i?86-*-linux*"]
- && ! [istarget "x86_64-*-linux*"]
- && ! [istarget "arm*-*-linux*"] } {
+if { ![supports_get_siginfo_type] } {
verbose "Skipping siginfo-thread.exp because of lack of support."
return
}
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index d169f3d..d3ed56f 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -1996,6 +1996,19 @@ gdb_caching_proc support_complex_tests {
return $result
}

+# Return 1 if GDB can get a type for siginfo from the target, otherwise
+# return 0.
+
+proc supports_get_siginfo_type {} {
+ if { [istarget "i?86-*-linux*"]
+ || [istarget "x86_64-*-linux*"]
+ || [istarget "arm*-*-linux*"] } {
+ return 1
+ } else {
+ return 0
+ }
+}
+
# Return 1 if target hardware or OS supports single stepping to signal
# handler, otherwise, return 0.

--
1.9.1