From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9096 invoked by alias); 1 Mar 2016 12:35:27 -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 9082 invoked by uid 89); 1 Mar 2016 12:35:26 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.2 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD autolearn=no version=3.3.2 spammy=H*MI:sk:2016030 X-HELO: e06smtp17.uk.ibm.com Received: from e06smtp17.uk.ibm.com (HELO e06smtp17.uk.ibm.com) (195.75.94.113) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (CAMELLIA256-SHA encrypted) ESMTPS; Tue, 01 Mar 2016 12:35:25 +0000 Received: from localhost by e06smtp17.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 1 Mar 2016 12:35:21 -0000 Received: from d06dlp02.portsmouth.uk.ibm.com (9.149.20.14) by e06smtp17.uk.ibm.com (192.168.101.147) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Tue, 1 Mar 2016 12:35:20 -0000 X-IBM-Helo: d06dlp02.portsmouth.uk.ibm.com X-IBM-MailFrom: krebbel@linux.vnet.ibm.com X-IBM-RcptTo: gcc-patches@gcc.gnu.org Received: from b06cxnps4076.portsmouth.uk.ibm.com (d06relay13.portsmouth.uk.ibm.com [9.149.109.198]) by d06dlp02.portsmouth.uk.ibm.com (Postfix) with ESMTP id 2F40E2190056 for ; Tue, 1 Mar 2016 12:35:03 +0000 (GMT) Received: from d06av05.portsmouth.uk.ibm.com (d06av05.portsmouth.uk.ibm.com [9.149.37.229]) by b06cxnps4076.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id u21CZJGE5898658 for ; Tue, 1 Mar 2016 12:35:19 GMT Received: from d06av05.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av05.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id u21CZJLa022140 for ; Tue, 1 Mar 2016 05:35:19 -0700 Received: from [9.152.212.123] (dyn-9-152-212-123.boeblingen.de.ibm.com [9.152.212.123]) by d06av05.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id u21CZIuO022120; Tue, 1 Mar 2016 05:35:18 -0700 Subject: Re: [PATCH 1/9] gensupport: Fix define_subst operand renumbering. To: James Greenhalgh References: <1456735599-21355-1-git-send-email-krebbel@linux.vnet.ibm.com> <1456735599-21355-2-git-send-email-krebbel@linux.vnet.ibm.com> <56D4497A.40304@redhat.com> <56D560F8.40500@linux.vnet.ibm.com> <20160301121500.GA7234@arm.com> Cc: Bernd Schmidt , gcc-patches@gcc.gnu.org, uweigand@de.ibm.com From: Andreas Krebbel Message-ID: <56D58C86.7020404@linux.vnet.ibm.com> Date: Tue, 01 Mar 2016 12:35:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <20160301121500.GA7234@arm.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16030112-0005-0000-0000-00000A92C9A4 X-IsSubscribed: yes X-SW-Source: 2016-03/txt/msg00028.txt.bz2 On 03/01/2016 01:15 PM, James Greenhalgh wrote: > On Tue, Mar 01, 2016 at 10:29:28AM +0100, Andreas Krebbel wrote: >> On 02/29/2016 02:36 PM, Bernd Schmidt wrote: >>> On 02/29/2016 09:46 AM, Andreas Krebbel wrote: >>>> Ok for mainline? >>>> >>>> * gensupport.c (process_substs_on_one_elem): Split loop to >>>> complete mark_operands_used_in_match_dup on all expressions in the >>>> vector first. >>>> (adjust_operands_numbers): Inline into process_substs_on_one_elem >>>> and remove function. >>> >>> Didn't I approve this a while ago? Not sure it's appropriate for stage4 >>> though; is this series fixing an important regression? >> >> Yes you did. I didn't commit it until the rest of the patch series was ready to commit. The patch >> series fixes a fundamental problem in the backend. The first iteration was posted before stage 4 but >> it took me a few iterations to get it right. >> >> I've committed the patch now after retesting. > > This looks like it has caused failures in the following tests on an > x86_64-none-linux-gnu build. I've regression tested the patch on x86_64 as well. Are there specific options required to enable these tests? Sorry for the breakage. I'll revert the patch together with the affected parts of my S/390 patchset. I'll just need a couple of hours to re-test on S/390. Bye, -Andreas- > > The failures are of this form: > > In file included from /data/work/gcc-bisect-bot/build/gcc/include/immintrin.h:45:0, > from /work/gcc-bisect-bot/gcc/gcc/testsuite/gcc.target/i386/avx512f-vfnmsubXXXps-1.c:12: > /data/work/gcc-bisect-bot/build/gcc/include/avx512fintrin.h: In function 'avx512f_test': > /data/work/gcc-bisect-bot/build/gcc/include/avx512fintrin.h:11666:10: internal compiler error: Segmentation fault > 0xb1a18f crash_signal > /work/gcc-bisect-bot/gcc/gcc/toplev.c:335 > Please submit a full bug report, > with preprocessed source if appropriate. > Please include the complete backtrace with any bug report. > See for instructions. > > There are lots of them, so I'm just mentioning the unique names below. > > gcc.target/i386/avx512f-vfmaddsubXXXps-2.c > gcc.target/i386/avx512f-vfmsubaddXXXps-2.c > gcc.target/i386/avx512f-vfnmsubXXXps-2.c > gcc.target/i386/avx512f-vfnmsubXXXps-1.c > gcc.target/i386/avx-2.c > gcc.target/i386/avx512vl-vshufpd-1.c > gcc.target/i386/avx512f-vfmsubXXXpd-2.c > gcc.target/i386/avx-1.c > gcc.target/i386/avx512f-vfixupimmsd-1.c > gcc.target/i386/avx512f-vfmsubXXXps-1.c > gcc.target/i386/avx512f-vfmsubaddXXXpd-2.c > gcc.target/i386/avx512f-vfmsubXXXps-2.c > gcc.target/i386/avx512vl-vshufps-1.c > gcc.target/i386/avx512f-vfmaddsubXXXps-1.c > gcc.target/i386/avx512f-vfixupimmsd-2.c > gcc.target/i386/avx512f-vfmaddXXXps-1.c > gcc.target/i386/avx512f-vfmaddsubXXXpd-1.c > gcc.target/i386/avx512f-vfmaddXXXpd-2.c > gcc.target/i386/avx512f-vfmaddXXXps-2.c > gcc.target/i386/avx512f-vfmaddsubXXXpd-2.c > gcc.target/i386/sse-22.c > gcc.target/i386/avx512f-vfmsubXXXpd-1.c > gcc.target/i386/testround-1.c > gcc.target/i386/sse-23.c > gcc.target/i386/avx512f-vfmsubaddXXXpd-1.c > gcc.target/i386/sse-22a.c > gcc.target/i386/sse-25.c > gcc.target/i386/sse-24.c > gcc.target/i386/avx512f-vfnmsubXXXpd-2.c > gcc.target/i386/sse-14.c > gcc.target/i386/avx512f-vfixupimmss-1.c > gcc.target/i386/avx512f-vfnmaddXXXpd-1.c > gcc.target/i386/avx512f-vfnmaddXXXps-2.c > gcc.target/i386/avx512f-vfixupimmpd-2.c > gcc.target/i386/avx512f-vfnmaddXXXpd-2.c > gcc.target/i386/sse-13.c > gcc.target/i386/avx512f-vfixupimmps-1.c > gcc.target/i386/avx512f-vfnmsubXXXpd-1.c > gcc.target/i386/avx512f-vfnmaddXXXps-1.c > gcc.target/i386/avx512f-vfixupimmps-2.c > gcc.target/i386/avx512f-vfmaddXXXpd-1.c > gcc.target/i386/testimm-10.c > gcc.target/i386/avx512f-vfmsubaddXXXps-1.c > gcc.target/i386/avx512f-vfixupimmss-2.c > gcc.target/i386/avx512f-vfixupimmpd-1.c > > Author: krebbel > Date: Tue Mar 1 09:19:14 2016 +0000 > > gensupport: Fix define_subst operand renumbering. > > When processing substitutions the operands are renumbered. To find a > free operand number the array used_operands_numbers is used. > Currently this array is used to assign new numbers before all the > RTXes in the vector have been processed. I did run into problems with > this for insns where a match_dup occurred in a later (use ...) operand > referring to an earlier operand (e.g. s390.md "setmem_long"). > > The patch splits the loop doing the processing into two in order to > have all the operand numbers collected already when assigning new > numbers. > > gcc/ChangeLog: > > 2016-03-01 Andreas Krebbel > > * gensupport.c (process_substs_on_one_elem): Split loop to > complete mark_operands_used_in_match_dup on all expressions in the > vector first. > (adjust_operands_numbers): Inline into process_substs_on_one_elem > and remove function. > > svn+ssh://gcc.gnu.org/svn/gcc/trunk@233841 > > Thanks, > James > >> >> -Andreas- >> >