From 85d2d5bbee1c21c2e3e929cc68fe06d762b3073b Mon Sep 17 00:00:00 2001 From: Luis Machado Date: Fri, 21 Feb 2020 17:58:48 -0300 Subject: [PATCH] Harden gdb.arch/aarch64-pauth.exp and fix a failure When running this testcase against a QEMU with PAC support, i noticed we were failing to recognize the additional [PAC] that is emitted in the backtrace, resulting in this failure: FAIL: gdb.arch/aarch64-pauth.exp: backtrace I've made the test use multi_line to make the pattern more clear. Tested against aarch64-linux-gnu with and without PAC support. gdb/testsuite/ChangeLog: 2020-02-28 Luis Machado * gdb.arch/aarch64-pauth.exp: Recognize optional PAC output. --- gdb/testsuite/ChangeLog | 4 ++++ gdb/testsuite/gdb.arch/aarch64-pauth.exp | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d5798bd394..eb81976f26 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2020-02-28 Luis Machado + + * gdb.arch/aarch64-pauth.exp: Recognize optional PAC output. + 2020-02-27 Tom de Vries * config/sid.exp: Remove unused globals. diff --git a/gdb/testsuite/gdb.arch/aarch64-pauth.exp b/gdb/testsuite/gdb.arch/aarch64-pauth.exp index 816e58be44..264bfce020 100644 --- a/gdb/testsuite/gdb.arch/aarch64-pauth.exp +++ b/gdb/testsuite/gdb.arch/aarch64-pauth.exp @@ -40,4 +40,9 @@ gdb_breakpoint [ gdb_get_line_number "break here" ] gdb_continue_to_breakpoint "break here" ".*break here.*" # Ensure we can get a full backtrace, despite the address signing. -gdb_test "bt" "^bt\r\n#0 +bar *\\(b=9\\) +at.*\r\n#1 +0x\[0-9a-f\]* +in +foo \\(a=5\\).*\r\n#2 +0x\[0-9a-f\]* +in +main \\(\\).*" "backtrace" +gdb_test "bt" \ + [multi_line \ + "#0\[ \t\]+bar \\(b=9\\) at \[^\r\n\]+" \ + "#1\[ \t\]+$hex (\\\[PAC\\\] )?in foo \\(a=5\\) at \[^\r\n\]+" \ + "#2\[ \t\]+$hex (\\\[PAC\\\] )?in main \\(\\) at \[^\r\n\]+" ] \ + "backtrace" -- 2.34.1