From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 95408 invoked by alias); 31 Oct 2019 18:00:56 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 95397 invoked by uid 89); 31 Oct 2019 18:00:55 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.1 spammy= X-HELO: us-smtp-1.mimecast.com Received: from us-smtp-delivery-1.mimecast.com (HELO us-smtp-1.mimecast.com) (205.139.110.120) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 31 Oct 2019 18:00:54 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572544853; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=RBshHwWOuqRCMjrtRCxnoVw0hhc5YkLxTCoS88CM6tI=; b=VkdViZX5jzlqbOw0XMkkRNXuqYXCFktlNwM2soU7R9AaeWmN4Hy20hQbd+6RtiwEzcER1M ODoVxQ42cYk1S6RKudHmFpwR/CWyZwBvfD7WNJ5ulgkWlerx5+UDQLL3292Pg1sD5FaAya 0x4M4kLexc8icvbdLc10K38KcLjsdxk= Received: from mail-lj1-f197.google.com (mail-lj1-f197.google.com [209.85.208.197]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-250-XEmKwFr4M2eG1mQl4dzjlQ-1; Thu, 31 Oct 2019 14:00:52 -0400 Received: by mail-lj1-f197.google.com with SMTP id p9so157961lji.7 for ; Thu, 31 Oct 2019 11:00:51 -0700 (PDT) Return-Path: Received: from ?IPv6:2001:8a0:f913:f700:56ee:75ff:fe8d:232b? ([2001:8a0:f913:f700:56ee:75ff:fe8d:232b]) by smtp.gmail.com with ESMTPSA id d4sm6346446wrc.54.2019.10.31.11.00.48 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 31 Oct 2019 11:00:48 -0700 (PDT) Subject: Re: [PATCHv2] Make "skip" work on inline frames To: Simon Marchi , Bernd Edlinger , "gdb-patches@sourceware.org" References: <8fc93db4-8906-4f4e-53f4-225ebfa0115d@simark.ca> <215bbf9c-4c3c-5cd2-c657-51aa7262f234@simark.ca> From: Pedro Alves Message-ID: Date: Thu, 31 Oct 2019 18:00:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2019-10/txt/msg01181.txt.bz2 On 10/31/19 4:53 PM, Simon Marchi wrote: > On 2019-10-31 12:42 p.m., Pedro Alves wrote: >> On 10/30/19 9:56 PM, Bernd Edlinger wrote: >>> +if { [prepare_for_testing "failed to prepare" "skip2" \ >>> + {skip2.c skip1.c } \ >>> + {debug nowarnings optimize=3D-O2}] } { >> >> Instead of -O2, could you make this use -O0 (the default), >> and then use attribute((always_inline)) to force inlining?=20 >> We do that in some tests. E.g., gdb.opt/inline-locals.c. >=20 > I think that's a good suggestion, but just be aware that there used to be > some problems with always_inline, e.g.: I don't think always_inline changes anything in the debug info special, it just tells the compiler to inline the function even at -O0, which is what we're after. >=20 > https://sourceware.org/bugzilla/show_bug.cgi?id=3D13263 This one seems to be about attribute((artificial)), and the desire to not step into such functions automatically: "Given that I marked the function always_inline and artificial, I was expecting not to step into its body." > https://sourceware.org/bugzilla/show_bug.cgi?id=3D12429 >=20 This one seems like a generic inlining issue. > I'm not sure if those are still valid. If they are, it might be more dif= ficult > that expected to use always_inline. I don't think always_inline is anything special compared to inlining because of -O2. Thanks, Pedro Alves