diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 68d564f3236..68ede89f566 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2015-11-20 Jose E. Marchesi + + * gdb.base/callfuncs.exp (fetch_all_registers): Filter out the + pstate register when comparing registers values in + sparc64-*-linux-gnu targets to avoid spurious differences. + 2015-11-20 Jose E. Marchesi * gdb.arch/sparc-sysstep.c: Include unistd.h for getpid. diff --git a/gdb/testsuite/gdb.base/callfuncs.exp b/gdb/testsuite/gdb.base/callfuncs.exp index fda3cb79232..28e2fe11510 100644 --- a/gdb/testsuite/gdb.base/callfuncs.exp +++ b/gdb/testsuite/gdb.base/callfuncs.exp @@ -254,6 +254,16 @@ proc fetch_all_registers {test} { } exp_continue } + -re "^pstate\[ \t\]+\[^\r\n\]+\r\n" { + if [istarget "sparc64-*-linux-gnu"] { + # Filter out the pstate register, since in sparc64 + # targets the Linux kernel disables pstate.PEF when + # returning from traps, giving spurious differences. + } else { + lappend all_registers_lines $expect_out(0,string) + } + exp_continue + } -re "^last_break\[ \t\]+\[^\r\n\]+\r\n" { if [istarget "s390*-*-*"] { # Filter out last_break which is read-only,