* Re: PPC64LE: New failures in empty-inline-cxx.exp after commit 196349e7e5939c2
2026-02-10 5:12 ` PPC64LE: New failures in empty-inline-cxx.exp after commit 196349e7e5939c2 Abhay Kandpal
@ 2026-02-11 9:58 ` Andrew Burgess
2026-02-11 10:39 ` Andrew Burgess
1 sibling, 0 replies; 3+ messages in thread
From: Andrew Burgess @ 2026-02-11 9:58 UTC (permalink / raw)
To: Abhay Kandpal; +Cc: gdb-patches, Ulrich.Weigand, cel
Abhay Kandpal <abhay@linux.ibm.com> writes:
> Hi Andrew,
>
> We are seeing new test failures on our ppc64le systems after the upstream commit:
>
> commit 196349e7e5939c2bef11fd93f098401d5b7111a5 (HEAD)
> Author: Andrew Burgess <aburgess@redhat.com <mailto:aburgess@redhat.com>>
> Date: Fri Sep 20 13:56:27 2024 +0100
> gdb: handle empty ranges for inline subroutines
>
> It appears that|gdb.opt/empty-inline-cxx.exp| was introduced as part of this change,
> and this test is now failing consistently on ppc64le across all optimization levels. A sample failure is shown below:
>
> gdb) run ^M
> Starting program: /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/outputs/gdb.opt/empty-inline-cxx/empty-inline-cxx-Og ^M
> [Thread debugging using libthread_db enabled]^M
> Using host libthread_db library "/usr/lib64/libthread_db.so.1".^M
> ^M
> Breakpoint 1, 0x0000000010000794 in main () at /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.opt/empty-inline-cxx.cc:63^M
> 63 {^M
> (gdb) bt^M
> #0 0x0000000010000794 in main () at /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.opt/empty-inline-cxx.cc:63^M
> (gdb) FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=Og: backtrace in main
> break get_myclass^M
>
> Summary of new failures:
>
> +FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=O0: backtrace in main
> +FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=O1: backtrace in main
> +FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=O2: backtrace in main
> +FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=Og: backtrace in main
>
> Environment details:
>
> OS: Fedora 43 (ppc64le)
> Kernel: 6.17.6-300.fc43.ppc64le
> GDB commit: 9b876c724da83d8ac8200afa3c87d873fc49ef16
> Build/Install: OK
> New failures: 4 (all in empty-inline-cxx.exp)
>
> The test does not exist prior to this change.
>
> This looks like a testsuite issue triggered by the new inline range handling on ppc64le.
> Could you please take a look, or let me know if I need to update the test expectations for this target?
Thanks for pointing this out, I'll start looking at this today.
Thanks,
Andrew
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: PPC64LE: New failures in empty-inline-cxx.exp after commit 196349e7e5939c2
2026-02-10 5:12 ` PPC64LE: New failures in empty-inline-cxx.exp after commit 196349e7e5939c2 Abhay Kandpal
2026-02-11 9:58 ` Andrew Burgess
@ 2026-02-11 10:39 ` Andrew Burgess
1 sibling, 0 replies; 3+ messages in thread
From: Andrew Burgess @ 2026-02-11 10:39 UTC (permalink / raw)
To: Abhay Kandpal; +Cc: gdb-patches, Ulrich.Weigand, cel
Abhay Kandpal <abhay@linux.ibm.com> writes:
> Hi Andrew,
>
> We are seeing new test failures on our ppc64le systems after the upstream commit:
>
> commit 196349e7e5939c2bef11fd93f098401d5b7111a5 (HEAD)
> Author: Andrew Burgess <aburgess@redhat.com <mailto:aburgess@redhat.com>>
> Date: Fri Sep 20 13:56:27 2024 +0100
> gdb: handle empty ranges for inline subroutines
>
> It appears that|gdb.opt/empty-inline-cxx.exp| was introduced as part of this change,
> and this test is now failing consistently on ppc64le across all optimization levels. A sample failure is shown below:
>
> gdb) run ^M
> Starting program: /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/outputs/gdb.opt/empty-inline-cxx/empty-inline-cxx-Og ^M
> [Thread debugging using libthread_db enabled]^M
> Using host libthread_db library "/usr/lib64/libthread_db.so.1".^M
> ^M
> Breakpoint 1, 0x0000000010000794 in main () at /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.opt/empty-inline-cxx.cc:63^M
> 63 {^M
> (gdb) bt^M
> #0 0x0000000010000794 in main () at /home/abhay/GDB/latest_gdb/build-gdb/gdb/testsuite/../../../binutils-gdb/gdb/testsuite/gdb.opt/empty-inline-cxx.cc:63^M
> (gdb) FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=Og: backtrace in main
I pushed the patch below which should resolve this failure.
Thanks for bringing this to my attention.
Andrew
---
commit 0fdb6840279614ce8a1cba6330098c24c04048cc
Author: Andrew Burgess <aburgess@redhat.com>
Date: Wed Feb 11 11:25:35 2026 +0100
gdb: fix gdb.opt/empty-inline-cxx.exp on ppc64le
Fix the gdb.opt/empty-inline-cxx.exp test for ppc64le targets. This
test has been failing since it was introduced in commit:
commit 196349e7e5939c2bef11fd93f098401d5b7111a5
Date: Fri Sep 20 13:56:27 2024 +0100
gdb: handle empty ranges for inline subroutines
The failure looks like this:
(gdb) bt
#0 0x00000001000008d4 in main () at /tmp/build/gdb/testsuite/../../../src/gdb/testsuite/gdb.opt/empty-inline-cxx.cc:63
(gdb) FAIL: gdb.opt/empty-inline-cxx.exp: opt_level=Og: backtrace in main
This is almost correct, except the test is not expecting the
"0x00000001000008d4 in" part. This first backtrace is done
immediately after the 'runto_main' call so the fact that we're not
stopped exactly at the start of line 63 is a little strange, but isn't
a critical part of this test. As such I've updated the test pattern
to accept an optional address within the backtrace.
This failure was brought to my attention in this mailing list post:
https://inbox.sourceware.org/gdb-patches/7fd2cc58-33ab-420a-83ba-e98cae69b028@linux.ibm.com
The test should now pass on ppc64le, and continue to pass on other
targets.
diff --git a/gdb/testsuite/gdb.opt/empty-inline-cxx.exp b/gdb/testsuite/gdb.opt/empty-inline-cxx.exp
index 60fa4c777b8..4b9eec7760e 100644
--- a/gdb/testsuite/gdb.opt/empty-inline-cxx.exp
+++ b/gdb/testsuite/gdb.opt/empty-inline-cxx.exp
@@ -67,7 +67,7 @@ proc run_test { opt_level } {
return
}
- gdb_test "bt" "#0\\s+main \\(\\) at [remote_file_re $::srcfile]:$::decimal" \
+ gdb_test "bt" "#0\\s+(?:$::hex in )?main \\(\\) at [remote_file_re $::srcfile]:$::decimal" \
"backtrace in main"
# Break at the empty inline function ptr::get_myclass.
^ permalink raw reply [flat|nested] 3+ messages in thread