diff options
author | Tom de Vries <tdevries@suse.de> | 2022-11-30 18:49:16 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2022-11-30 18:49:16 +0100 |
commit | a496d4a104f2f8edca9287ab62c8d4031a272035 (patch) | |
tree | 03de97515a3a05d9626237cff3268be7d03c474e | |
parent | 885d86436c3f9ab0a13f39647860b526faa92cf8 (diff) | |
download | gdb-a496d4a104f2f8edca9287ab62c8d4031a272035.zip gdb-a496d4a104f2f8edca9287ab62c8d4031a272035.tar.gz gdb-a496d4a104f2f8edca9287ab62c8d4031a272035.tar.bz2 |
[gdb/testsuite] Enable gdb.arch/s390-disassembler-options.exp for --enable-targets=all
On s390x-linux, I run into:
...
DUPLICATE: gdb.arch/s390-disassembler-options.exp: \
show disassembler-options esa
...
First, reproduce this on x86_64-linux with --enable-targets=all, by replacing
the test for 'istarget "s390*-*-*"' with a test for 'get_set_option_choices
"set architecture" "s390"'.
Fix the DUPLICATE by using with_test_prefix.
Also modernize the test-case by using clean_restart instead of gdb_exit/gdb_start.
Tested on x86_64-linux.
-rw-r--r-- | gdb/testsuite/gdb.arch/s390-disassembler-options.exp | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/gdb/testsuite/gdb.arch/s390-disassembler-options.exp b/gdb/testsuite/gdb.arch/s390-disassembler-options.exp index 7ba9e51..df6c236 100644 --- a/gdb/testsuite/gdb.arch/s390-disassembler-options.exp +++ b/gdb/testsuite/gdb.arch/s390-disassembler-options.exp @@ -18,39 +18,43 @@ # This test exercises set/show disassembler-options results are preserved # across multiple set architecture calls. -if {![istarget "s390*-*-*"]} { - verbose "Skipping S390 disassembler options." - return -} - -gdb_exit -gdb_start +clean_restart -set option "esa" +set archs [get_set_option_choices "set architecture" "s390"] set arch1 "s390:64-bit" set arch2 "s390:31-bit" +foreach arch [list $arch1 $arch2] { + if { [lsearch -exact $archs $arch] == -1 } { + return + } +} -gdb_test "set architecture $arch1" \ +set option "esa" + +with_test_prefix $arch1 { + gdb_test "set architecture $arch1" \ "The target architecture is set to \"$arch1\"\." \ "set architecture $arch1" -gdb_test_no_output "set disassembler-options" -gdb_test "show disassembler-options" \ + gdb_test_no_output "set disassembler-options" + gdb_test "show disassembler-options" \ "The current disassembler options are ''.*" \ "show NULL disassembler-options" -gdb_test_no_output "set disassembler-options $option" -gdb_test "show disassembler-options" \ + gdb_test_no_output "set disassembler-options $option" + gdb_test "show disassembler-options" \ "The current disassembler options are '$option'.*" \ "show disassembler-options $option" +} # Change architectures and verify the disassembler options have been preserved. -gdb_test "set architecture $arch2" \ +with_test_prefix $arch2 { + gdb_test "set architecture $arch2" \ "The target architecture is set to \"$arch2\"\." \ "set architecture $arch2" -gdb_test "show disassembler-options" \ + gdb_test "show disassembler-options" \ "The current disassembler options are '$option'.*" \ "show disassembler-options $option" - +} |