From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id frfvBsAl2WqIqggAWB0awg (envelope-from ) for ; Wed, 21 Oct 2026 16:51:12 -0400 Authentication-Results: simark.ca; dkim=fail reason="signature verification failed" (768-bit key; unprotected) header.d=tromey.com header.i=@tromey.com header.a=rsa-sha256 header.s=default header.b=F/JVU476; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id ED50B1E051; Wed, 21 Oct 2026 16:51:11 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_INVALID,DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_BL_SPAMCOP_NET, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=no autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 487A91E04D for ; Wed, 21 Oct 2026 16:51:11 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BBE4C4BA2E3C for ; Wed, 21 Oct 2026 20:51:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BBE4C4BA2E3C Authentication-Results: sourceware.org; dkim=fail reason="signature verification failed" (768-bit key, unprotected) header.d=tromey.com header.i=@tromey.com header.a=rsa-sha256 header.s=default header.b=F/JVU476 Received: from omta38.uswest2.a.cloudfilter.net (omta38.uswest2.a.cloudfilter.net [35.89.44.37]) by sourceware.org (Postfix) with ESMTPS id 2CE974BA2E0F for ; Wed, 21 Oct 2026 20:50:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2CE974BA2E0F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2CE974BA2E0F Authentication-Results: sourceware.org; arc=none smtp.remote-ip=35.89.44.37 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1792615844; cv=none; b=MyTU8XHLWFq2xrglG2KmtxNiF/ErvrtTIyvi1G96OCkyfkTLLZm5UgCWsVvIDZjcMDH1ZYUoeUtLvhuuuspBVxHGD1lYjucK3ZEYxLelWMSqs9jNr+wBtEp8ds6nVDPFqd2s4kdP4pTkNbl5oHXKeyXCoGRuAqnYlUjJQffEuQg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1792615844; c=relaxed/simple; bh=uqqBx1mF1rqwdAzx9u7ekU7/OAWYCT951m3dJJMBkGg=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=kB2Koyeif4xQtEeL3LyvhM6Mj9KSNWdKzAHVBYYPs+A4D+y8D3d4zq5NOEUoVWAnjUFEJYyKBtw9OoyKHPEMlNImErmYoSqFBOYj6aeqDvNNOwmW1Mv573GGSmL0UyDKe1o8gWKMMh4htyLB1PU5Mq5aLxfy5APeQhxzc4vcvwA= ARC-Authentication-Results: i=1; sourceware.org; dkim=policy (768-bit key, unprotected) header.d=tromey.com header.i=@tromey.com header.a=rsa-sha256 header.s=default header.b=F/JVU476 reason="signing key too small" DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2CE974BA2E0F Received: from eig-obgw-6007b.ext.cloudfilter.net ([10.0.30.166]) by cmsmtp with ESMTPS id Jb5VxYthOv0ndJdGlxaLLs; Wed, 21 Oct 2026 20:50:43 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id JdGkxGTgTgKkdJdGkxnIxf; Wed, 21 Oct 2026 20:50:42 +0000 X-Authority-Analysis: v=2.4 cv=a9cw9VSF c=1 sm=1 tr=0 ts=6ad925a2 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=660iZSQnnn4A:10 a=ItBw4LHWJt0A:10 a=QyXUC8HyAAAA:8 a=njWJ1rwwGTfrU3gjGz8A:9 a=DCx65vhANUyCzuf5D8fC:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To :Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Unsubscribe-Post: List-Subscribe:List-Post:List-Owner:List-Archive; bh=6/2MUO5lj6EZb46vccc2QLqI0hwxYUsZNSRyoy67y90=; b=F/JVU476sPlkpCim73iDfvzj6H ICO6TTjqtGh0mwOZttowF5KnNu2oC86YKAC+FSXhdf2komZFlqjORiLifpNAE4+W0AnzYoRQEe/RD XE4FjNjajgNOVbEgz+QQWNsVu; Received: from 97-122-110-129.hlrn.qwest.net ([97.122.110.129]:47076 helo=bapiya) by box5379.bluehost.com with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.100.1) (envelope-from ) id 1xJdGk-00000003GDo-0Hb5; Wed, 21 Oct 2026 14:50:42 -0600 From: Tom Tromey To: Abdul Basit Ijaz Cc: gdb-patches@sourceware.org, JiniSusan.George@amd.com, tom@tromey.com, eliz@gnu.org Subject: Re: [PATCH v11 04/10] gdb: Skip trampoline frames for the backtrace command. In-Reply-To: <20260803193449.33375-5-abdul.b.ijaz@intel.com> (Abdul Basit Ijaz's message of "Mon, 3 Aug 2026 21:34:43 +0200") References: <20260803193449.33375-1-abdul.b.ijaz@intel.com> <20260803193449.33375-5-abdul.b.ijaz@intel.com> X-Attribution: Tom Date: Wed, 21 Oct 2026 14:50:40 -0600 Message-ID: <87jynau6an.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - sourceware.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 97.122.110.129 X-Source-L: No X-Exim-ID: 1xJdGk-00000003GDo-0Hb5 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 97-122-110-129.hlrn.qwest.net (bapiya) [97.122.110.129]:47076 X-Source-Auth: tom+tromey.com X-Email-Count: 17 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfB44Z86QYQWYXxfRZzCgV2VYGM2bLjwJoaURX3C7VY5SyL11j0boGnu21KRuSsewCPUGPO54uawBJc6GFTbsFFCQQZYibq5y7zj/XSGom2BNom8ONSLx i5mOsqwXvEYQXOFkGgpAs0Tm84Hno5wxbnYV9mRBvHeIAQlLjxjOwJA8rGLZjea+KK+DRAwbb8KnPYe7/YPr4RmO+ZQu5gBkhBQ= X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org >>>>> Abdul Basit Ijaz writes: > This change filters trampoline functions when the option > 'skip-trampoline-functions' is set to 'on' for the backtrace command. > Before the change, GDB prints the frames indicated by the compiler with > DIE "DW_AT_trampoline" in the backtrace, but for better user experience, > all such frames can be hidden from the user. > For O2 optimized code where inlined trampoline wrappers are inlined into > regular functions. Check the frame's function directly for inline frames > instead of looking up by PC, which would incorrectly return the caller's > function. > The test 'gdb.fortran/mixed-lang-stack' test used to fail for the IFX > compiler because of extra trampoline frames in the backtrace. After the > commit, those trampoline frames are filtered and test is updated accordingly. It's maybe somewhat unfortunate that this doesn't follow the precedent set by Python frame filters, where a frame can be marked "elided" and then is either printed indented (the default) or hidden (with "bt -hide"). > diff --git a/gdb/stack.c b/gdb/stack.c > index f41f818cebb..fa217ae9f6f 100644 > --- a/gdb/stack.c > +++ b/gdb/stack.c > @@ -1978,6 +1978,14 @@ backtrace_command_1 (const frame_print_options &fp_opts, > { > QUIT; > + if (skip_trampoline_functions && in_trampoline_frame (fi)) > + { > + /* Trampoline frames are not printed so they are not counted in > + the backtrace limit. */ > + count++; > + continue; > + } What happens if I "break 0x..." using an address in a trampoline function and then "bt" from there? I think this means the frame won't be printed. But this could be confusing because gdb will be lying about the PC. In this scenario what would "disassemble" by itself show? That is, I somewhat suspect that there should be a special case here for the "live" frame. Tom