[binutils-gdb] Modify altivec-regs.exp testcase for AIX
Ulrich Weigand
uweigand@sourceware.org
Tue Mar 7 09:55:15 GMT 2023
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=60204874f5a987b164f7f194d3f96729847fe329
commit 60204874f5a987b164f7f194d3f96729847fe329
Author: Aditya Vidyadhar Kamath <Aditya.Kamath1@ibm.com>
Date: Mon Mar 6 01:31:34 2023 -0600
Modify altivec-regs.exp testcase for AIX
On AIX, the debugger cannot access vector registers before they
are first used by the inferior. Hence we change the test case
such that some vector registers are accessed by the variable 'x' in AIX
and other targets are not affected as a consequence of the same.
Diff:
---
gdb/testsuite/gdb.arch/altivec-regs.c | 8 +++++++-
gdb/testsuite/gdb.arch/altivec-regs.exp | 3 +++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/gdb/testsuite/gdb.arch/altivec-regs.c b/gdb/testsuite/gdb.arch/altivec-regs.c
index 8f3b729fe3f..1411f15e358 100644
--- a/gdb/testsuite/gdb.arch/altivec-regs.c
+++ b/gdb/testsuite/gdb.arch/altivec-regs.c
@@ -20,12 +20,18 @@ main ()
vector unsigned int z;
int a;
+ #ifdef _AIX
+ /* On AIX, the debugger cannot access vector registers before they
+ are first used by the inferior. Perform such an access here. */
+ x = ((vector unsigned int) vec_splat_u8 (0));
+ #endif
+
/* This line may look unnecessary but we do need it, because we want to
have a line to do a next over (so that gdb refetches the registers)
and we don't want the code to change any vector registers.
The splat operations below modify the VRs,i
so we don't want to execute them yet. */
- a = 9;
+ a = 9; /* start here */
x = ((vector unsigned int) vec_splat_u8 (-2));
y = ((vector unsigned int) vec_splat_u8 (1));
diff --git a/gdb/testsuite/gdb.arch/altivec-regs.exp b/gdb/testsuite/gdb.arch/altivec-regs.exp
index 6cc32aeff22..b771a4df76f 100644
--- a/gdb/testsuite/gdb.arch/altivec-regs.exp
+++ b/gdb/testsuite/gdb.arch/altivec-regs.exp
@@ -52,6 +52,9 @@ if {![runto_main]} {
return 0
}
+gdb_breakpoint [gdb_get_line_number "start here"]
+gdb_continue_to_breakpoint "start here"
+
gdb_test "set print frame-arguments all"
# set all the registers integer portions to 1
More information about the Gdb-cvs
mailing list