From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 537 invoked by alias); 13 Oct 2009 20:30:44 -0000 Received: (qmail 32699 invoked by uid 22791); 13 Oct 2009 20:30:41 -0000 X-SWARE-Spam-Status: No, hits=-0.9 required=5.0 tests=AWL,BAYES_00,NO_DNS_FOR_FROM X-Spam-Check-By: sourceware.org Received: from e5.ny.us.ibm.com (HELO e5.ny.us.ibm.com) (32.97.182.145) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 13 Oct 2009 20:30:36 +0000 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by e5.ny.us.ibm.com (8.14.3/8.13.1) with ESMTP id n9DKKuPF021416 for ; Tue, 13 Oct 2009 16:20:56 -0400 Received: from d01av03.pok.ibm.com (d01av03.pok.ibm.com [9.56.224.217]) by d01relay02.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id n9DKUYjU228352 for ; Tue, 13 Oct 2009 16:30:34 -0400 Received: from d01av03.pok.ibm.com (loopback [127.0.0.1]) by d01av03.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n9DKUX7X031034 for ; Tue, 13 Oct 2009 16:30:33 -0400 Received: from hungry-tiger.westford.ibm.com (hungry-tiger.westford.ibm.com [9.33.20.67]) by d01av03.pok.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id n9DKUVhN030852; Tue, 13 Oct 2009 16:30:32 -0400 Received: by hungry-tiger.westford.ibm.com (Postfix, from userid 500) id D75E91EEAD0; Tue, 13 Oct 2009 16:25:00 -0400 (EDT) Date: Tue, 13 Oct 2009 20:40:00 -0000 From: Michael Meissner To: David Edelsohn Cc: Michael Meissner , gcc-patches@gcc.gnu.org, Jakub Jelinek Subject: Re: [PATCH] Fix builtin attributes on powerpc Message-ID: <20091013202500.GA9438@hungry-tiger.westford.ibm.com> Mail-Followup-To: Michael Meissner , David Edelsohn , gcc-patches@gcc.gnu.org, Jakub Jelinek References: <20091001185752.GA28820@hungry-tiger.westford.ibm.com> <303e1d290910130630v33b0fe11sd59a5a806b4eb948@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <303e1d290910130630v33b0fe11sd59a5a806b4eb948@mail.gmail.com> User-Agent: Mutt/1.4.2.2i X-IsSubscribed: yes 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 X-SW-Source: 2009-10/txt/msg00866.txt.bz2 On Tue, Oct 13, 2009 at 09:30:28AM -0400, David Edelsohn wrote: > On Thu, Oct 1, 2009 at 2:57 PM, Michael Meissner > wrote: > > I tried to get this in by yesterday, but I had some server issues, and I > > couldn't get the tests run until today. > > > > In working with Jakub on a backport of the power7 patches to the Red Hat 4.4 > > branch, we found some problems in running spec.  The problem turned out to that > > the vectorized math functions had different declaration attributes than the > > scalar versions of the functions.  In doing further investigation, it turned > > out that we weren't setting any attributes for any builtin functions.  This > > patch fixes the attributes for the Altivec (VMX) and VSX builtins.  I have not > > done the spe and paired builtins in this patch, but that can be easily done > > later. > > > > I did the usual boostrap and make check with no regressions. > > > > Is this acceptable to checkin under stage 3 as a backend change? > > If this is the design that the community wants to use in all backends, > it is fine with me. It is too late for GCC 4.5 to do things in a common fashion. The real solution is to move the backend builtins into the main builtins. I had some patches to allow backends to optionally do this, and when 4.6 opens up we can explore this. However, I'm trying to fix the problem right now, and so this particular solution is limited to just to tie the definition of the builtin enum and flags together in one place, rather than having a separate switch statement that is problematical, because you have to edit stuff in multiple places. We already have the problem between the rs6000.h, rs6000.c, and rs6000-c.c files that each have some knowledge of builtins (and overloaded builtins make it even worse). > I think MAX_RS6000_BUILTINS is more consistent with the naming > convention in the rest of GCC than RS6000_BUILTIN_COUNT. I agree MAX_RS6000_BUILTINS is more consistant, but RS6000_BUILTIN_COUNT is what was originally used, so I didn't change that. > The patch is okay. Ok. -- Michael Meissner, IBM 4 Technology Place Drive, MS 2203A, Westford, MA, 01886, USA meissner@linux.vnet.ibm.com