aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/testsuite/ChangeLog4
-rw-r--r--gdb/testsuite/gdb.arch/vsx-regs.exp13
2 files changed, 16 insertions, 1 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index d940bfb..b8c84aa 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
+ * gdb.arch/powerpc-vsx-regs.exp: Initialize vs* doublewords.
+
+2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
+
* gdb.arch/powerpc-plxv-nonrel.s: Testcase using
non-relative plxv instructions.
* gdb.arch/powerpc-plxv-nonrel.exp: Testcase harness.
diff --git a/gdb/testsuite/gdb.arch/vsx-regs.exp b/gdb/testsuite/gdb.arch/vsx-regs.exp
index c234d6a..0b0d2fa 100644
--- a/gdb/testsuite/gdb.arch/vsx-regs.exp
+++ b/gdb/testsuite/gdb.arch/vsx-regs.exp
@@ -89,7 +89,18 @@ if {$endianness == "big"} {
set float_register ".raw 0xdeadbeefdeadbeef."
-# First run the F0~F31/VS0~VS31 tests
+# Note that the F0-F31 registers are shared with the doubleword 0 portion of
+# the VS0-VS31 registers, the doubleword 1 portions of VS* remain unchanged
+# after updates to F*.
+# Since dl_main uses some VS* registers, and per inspection their values are
+# no longer zero when our test reaches main(), we need to explicitly
+# initialize the doubleword1 portions before we run our tests against
+# values currently in those registers.
+
+# 0: Initialize the (doubleword 1) portion of the VS0-VS31 registers.
+for {set i 0} {$i < 32} {incr i 1} {
+ gdb_test_no_output "set \$vs$i.v2_double\][0\] = 0"
+}
# 1: Set F0~F31 registers and check if it reflects on VS0~VS31.
for {set i 0} {$i < 32} {incr i 1} {