aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2020-12-04 13:36:47 +0100
committerTom de Vries <tdevries@suse.de>2020-12-04 13:36:47 +0100
commitf17727b3497a630b01dffd219cdc372a058be121 (patch)
treed972f1a0d938b3eb66905b4c489a5f6b7cca2a48
parenta1499830feea0dc134e8b08d7cc5b6a52e370294 (diff)
downloadfsf-binutils-gdb-f17727b3497a630b01dffd219cdc372a058be121.zip
fsf-binutils-gdb-f17727b3497a630b01dffd219cdc372a058be121.tar.gz
fsf-binutils-gdb-f17727b3497a630b01dffd219cdc372a058be121.tar.bz2
[gdb/testsuite] Fix count usage in gdb.reverse/insn-reverse.exp
Consider the test-case gdb.reverse/insn-reverse.exp. After the loop setting count, the valid entries in various arrays range from 0 to $count - 1 inclusive. Then $count is decremented: ... incr count -1 ... after which the valid entries range from 0 to $count inclusive. The first subsequent loop handles that properly: ... for {set i $count} {$i >= 0} {incr i -1} { ... but the following loop does not, because it treats $count as exclusive bound: ... for {set i 0} {$i < $count} {incr i} { ... Fix this by removing the incr, and using $count - 1 as starting value in the first loop. gdb/testsuite/ChangeLog: 2020-12-04 Tom de Vries <tdevries@suse.de> * gdb.reverse/insn-reverse.exp: Fix count handling.
-rw-r--r--gdb/testsuite/ChangeLog4
-rw-r--r--gdb/testsuite/gdb.reverse/insn-reverse.exp3
2 files changed, 5 insertions, 2 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index e7408a0..a88668d 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2020-12-04 Tom de Vries <tdevries@suse.de>
+ * gdb.reverse/insn-reverse.exp: Fix count handling.
+
+2020-12-04 Tom de Vries <tdevries@suse.de>
+
* gdb.reverse/insn-reverse-x86.c: Guard x86_64 assembly with #ifdef
__x86_64__.
diff --git a/gdb/testsuite/gdb.reverse/insn-reverse.exp b/gdb/testsuite/gdb.reverse/insn-reverse.exp
index d60f873..5831952 100644
--- a/gdb/testsuite/gdb.reverse/insn-reverse.exp
+++ b/gdb/testsuite/gdb.reverse/insn-reverse.exp
@@ -102,9 +102,8 @@ proc test { func testcase_nr } {
gdb_test "si" "" ""
}
- incr count -1
# Registers contents after each backward single step.
- for {set i $count} {$i >= 0} {incr i -1} {
+ for {set i [expr $count - 1]} {$i >= 0} {incr i -1} {
gdb_test "reverse-stepi" "" ""
set post_regs($i) [capture_command_output "info all-registers" ""]
}