From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4641 invoked by alias); 7 Apr 2017 17:30:37 -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 4430 invoked by uid 89); 7 Apr 2017 17:30:30 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=battle, HTo:U*pthaugen 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; Fri, 07 Apr 2017 17:30:28 +0000 Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.13.8) with ESMTP id v37HTnkR002886; Fri, 7 Apr 2017 12:30:01 -0500 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id v37HTiJq002875; Fri, 7 Apr 2017 12:29:44 -0500 Date: Fri, 07 Apr 2017 17:30:00 -0000 From: Segher Boessenkool To: Pat Haugen Cc: GCC Patches , David Edelsohn Subject: Re: [PATCH, rs6000] Update Power9 scheduling of vector and vector load insns Message-ID: <20170407172942.GW4402@gate.crashing.org> References: <38e578a5-418d-fcc5-4610-b9788738ec38@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <38e578a5-418d-fcc5-4610-b9788738ec38@linux.vnet.ibm.com> User-Agent: Mutt/1.4.2.3i X-IsSubscribed: yes X-SW-Source: 2017-04/txt/msg00396.txt.bz2 On Fri, Apr 07, 2017 at 11:58:15AM -0500, Pat Haugen wrote: > The following patch changes the method of scheduling vector and vector > load insns. Before it tried to pair up like insns and interleave the > pairs, resulting in something like L1L2V1V2. The preferred scheduling is > now to just interleave the insns, resulting in L1V1L2V2. If interleaving > fails, fall back to pairing like insns. > + 1 : A vecload or vector insn has been issued and a candidate for > + for pairing has been found and moved to the end of the ready Duplicate word ("for for"). > + if (is_power9_pairable_vec_type (get_attr_type > + (ready[pos]))) A good way to battle long lines is to introduce another local var. Okay for trunk and branch (with the duplicate word fixed, and do whatever you think best with the long line). Thanks, Segher