From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 90502 invoked by alias); 20 Mar 2018 13:31:07 -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 90493 invoked by uid 89); 20 Mar 2018 13:31:07 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,KAM_NUMSUBJECT,T_RP_MATCHES_RCVD autolearn=no version=3.3.2 spammy= X-HELO: gate.crashing.org Received: from gate.crashing.org (HELO gate.crashing.org) (63.228.1.57) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 20 Mar 2018 13:31:01 +0000 Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id w2KDUweN020780; Tue, 20 Mar 2018 08:30:58 -0500 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id w2KDUv5g020779; Tue, 20 Mar 2018 08:30:57 -0500 Date: Tue, 20 Mar 2018 13:32:00 -0000 From: Segher Boessenkool To: Michael Meissner , GCC Patches , David Edelsohn , Bill Schmidt Subject: Re: [RFC Patch], PowerPC memory support pre-gcc9, patch #2 Message-ID: <20180320133057.GH21977@gate.crashing.org> References: <20180314225408.GA3365@ibm-tiger.the-meissners.org> <20180315170429.GA20642@ibm-tiger.the-meissners.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180315170429.GA20642@ibm-tiger.the-meissners.org> User-Agent: Mutt/1.4.2.3i X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00955.txt.bz2 On Thu, Mar 15, 2018 at 01:04:30PM -0400, Michael Meissner wrote: > This is patch #2 of my series for improving the PowerPC internal memory > support. It assumes patch #1 has been applied. > > This patch moves the rs6000_move_128bit function from rs6000.c to a new file, > rs6000-output.c. > > The third patch will create a rs6000_move_64bit function and change both 32-bit > and 64-bit movdi to call it, instead of having all of the instructions be > literals. I will also likely add improvements to setting the reg_addr address > masks for offsetable addresses. > > The fourth patch will like move movdd and movdf to call rs6000_move_64bit as > well. > > I tested this on a little endian power8 system and there were no regressions. > > 2018-03-14 Michael Meissner > > * config.gcc (powerpc*-*-*): Add rs6000-output.o to extra_objs. > * config/rs6000/t-rs6000 (rs6000-output.o): Add build rule. > * config/rs6000/rs6000.c (rs6000_output_move_128bit): Move to > rs6000-output.c. I am not happy at all with this new file, and it won't even work as far as I see (for multi-alternative define_insn's; splitting the strings to a different file than the constraints and attributes is asking for trouble, better keep it all together). Files should bundle together code that conceptually belongs together, not some arbitrary split ("these routine return strings that are eventually output from the compiler as instructions"). Segher