From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 58493 invoked by alias); 27 May 2019 07:16:26 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 58441 invoked by uid 89); 27 May 2019 07:16:26 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy= X-HELO: mx1.suse.de Received: from mx2.suse.de (HELO mx1.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 27 May 2019 07:16:24 +0000 Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 3687BAEBF; Mon, 27 May 2019 07:16:22 +0000 (UTC) Date: Mon, 27 May 2019 07:26:00 -0000 From: Richard Biener To: Alex Henrie cc: gcc-patches@gcc.gnu.org, msebor@gcc.gnu.org Subject: Re: [PATCH] PR c/86407 - Add option to ignore fndecl attributes on function pointers In-Reply-To: Message-ID: References: <20190524035737.14107-1-alexhenrie24@gmail.com> <3E00946D-43BA-42AA-A7C5-58F958FABFDE@suse.de> User-Agent: Alpine 2.20 (LSU 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-SW-Source: 2019-05/txt/msg01752.txt.bz2 On Sat, 25 May 2019, Alex Henrie wrote: > On Sat, May 25, 2019 at 12:34 AM Richard Biener wrote: > > > > On May 24, 2019 5:49:38 PM GMT+02:00, Alex Henrie wrote: > > >As far as I can tell, "fndecl" is a misnomer: these attributes are > > >more accurately called "function definition attributes", i.e. > > >attributes that affect the assembly code of the function but do not > > >affect its calling convention. > > > > Yes. The others are attributes also applicable to function types to properly support attributed indirect calls. > > I'm happy to rename ix86_handle_fndecl_attribute to > ix86_handle_fndef_attribute then. Should I do that in this patch or a > separate patch? I don't see this fixes anything. It's pretty well-know that attributes affecting call semantics have to be accepted both at type and decl position and that they should be added to the type attributes. Attributes that only affect code generation for the function itself should be added to decl attributes and do not necessarily need to be accepted in type position.