aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorAndrew Burgess <aburgess@redhat.com>2023-04-07 06:19:58 +0100
committerAndrew Burgess <aburgess@redhat.com>2023-04-07 06:24:20 +0100
commit9340f361097963011369c3339f7d28239d2f851b (patch)
tree1a50db11c7ca76d3796f516aca97aa7b523a2aba /gdb
parenta67a3bbd35c3d8f028cad5cb9e3122e56071baee (diff)
downloadbinutils-9340f361097963011369c3339f7d28239d2f851b.zip
binutils-9340f361097963011369c3339f7d28239d2f851b.tar.gz
binutils-9340f361097963011369c3339f7d28239d2f851b.tar.bz2
gdb/testsuite: updates for gdb.arch/{amd64,i386}-disp-step-self-call.exp
This commit: commit cf141dd8ccd36efe833aae3ccdb060b517cc1112 Date: Wed Feb 22 12:15:34 2023 +0000 gdb: fix reg corruption from displaced stepping on amd64 Added two test scripts gdb.arch/amd64-disp-step-self-call.exp and gdb.arch/i386-disp-step-self-call.exp. These scripts contained a test that included a stack address in the test name, this makes it harder to compare results between runs. This commit gives the tests proper names that doesn't include an address. Also in gdb.arch/i386-disp-step-self-call.exp I noticed that we were writing 8-bytes rather than 4 in order to clear the return address entry on the stack. This is also fixed in this commit.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/testsuite/gdb.arch/amd64-disp-step-self-call.exp3
-rw-r--r--gdb/testsuite/gdb.arch/i386-disp-step-self-call.exp3
2 files changed, 4 insertions, 2 deletions
diff --git a/gdb/testsuite/gdb.arch/amd64-disp-step-self-call.exp b/gdb/testsuite/gdb.arch/amd64-disp-step-self-call.exp
index db44a31..ecac3cd 100644
--- a/gdb/testsuite/gdb.arch/amd64-disp-step-self-call.exp
+++ b/gdb/testsuite/gdb.arch/amd64-disp-step-self-call.exp
@@ -60,7 +60,8 @@ gdb_test_multiple "x/2i \$pc" "get address of next insn" {
# Clear the slot on the stack and confirm it was set to zero.
set sp [expr $sp - 0x8]
-gdb_test_no_output "set {unsigned long long} $sp = 0"
+gdb_test_no_output "set {unsigned long long} $sp = 0" \
+ "clear stack slot"
set zero_val 0x[format %016x 0]
gdb_test "x/1gx 0x[format %x $sp]" "$hex:\\s+${zero_val}" \
"check return address slot was set to zero"
diff --git a/gdb/testsuite/gdb.arch/i386-disp-step-self-call.exp b/gdb/testsuite/gdb.arch/i386-disp-step-self-call.exp
index 7ea036f..034ef48 100644
--- a/gdb/testsuite/gdb.arch/i386-disp-step-self-call.exp
+++ b/gdb/testsuite/gdb.arch/i386-disp-step-self-call.exp
@@ -60,7 +60,8 @@ gdb_test_multiple "x/2i \$pc" "get address of next insn" {
# Clear the slot on the stack and confirm it was set to zero.
set sp [expr $sp - 0x4]
-gdb_test_no_output "set {unsigned long long} $sp = 0"
+gdb_test_no_output "set {unsigned int} $sp = 0" \
+ "clear stack slot"
set zero_val 0x[format %08x 0]
gdb_test "x/1wx 0x[format %x $sp]" "$hex:\\s+${zero_val}" \
"check return address slot was set to zero"