From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 36487 invoked by alias); 2 Sep 2015 17:09:50 -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 36417 invoked by uid 89); 2 Sep 2015 17:09:49 -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,SPF_PASS autolearn=ham version=3.3.2 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (146.101.78.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 02 Sep 2015 17:09:45 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.140]) by eu-smtp-1.mimecast.com with ESMTP id uk-mta-35-f6G99OvzSe6FVhtuPR-5aA-1; Wed, 02 Sep 2015 18:09:40 +0100 Received: from e105915-lin.cambridge.arm.com ([10.1.2.79]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 2 Sep 2015 18:09:39 +0100 Subject: Re: [PR64164] drop copyrename, integrate into expand To: Alexandre Oliva References: <20150723203112.GB27818@gate.crashing.org> <20150810082355.GA31149@arm.com> <55C8BFC3.3030603@redhat.com> Cc: Jeff Law , James Greenhalgh , "H.J. Lu" , Segher Boessenkool , Richard Biener , GCC Patches , Christophe Lyon , David Edelsohn , Eric Botcazou From: Alan Lawrence Message-ID: <55E72D4C.40705@arm.com> Date: Wed, 02 Sep 2015 17:09:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: X-MC-Unique: f6G99OvzSe6FVhtuPR-5aA-1 Content-Type: text/plain; charset=WINDOWS-1252; format=flowed Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2015-09/txt/msg00179.txt.bz2 On 14/08/15 19:57, Alexandre Oliva wrote: > > I'm glad it appears to be working to everyone's > satisfaction now. I've just committed it as r226901, with only a > context adjustment to account for a change in use_register_for_decl in > function.c. /me crosses fingers :-) > > Here's the patch as checked in: One more failure to report, I'm afraid. On AArch64 Bigendian,=20 aapcs64/func-ret-4.c ICEs in simplify_subreg (line refs here are from r2273= 48): In file included from /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch= 64/aa pcs64/func-ret-4.c:14:0: /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/func-ret-4.= c: In function 'func_return_val_10': /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/abitest-2.h= :12:2 4: internal compiler error: in simplify_subreg, at simplify-rtx.c:5808 /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/abitest-2.h= :13:4 0: note: in definition of macro 'FUNC_NAME_COMBINE' /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/abitest-2.h= :15:2 7: note: in expansion of macro 'FUNC_NAME_1' /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/abitest-2.h= :15:3 9: note: in expansion of macro 'FUNC_BASE_NAME' /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/abitest-2.h= :69:3 3: note: in expansion of macro 'FUNC_NAME' /work/alalaw01/src/gcc/gcc/testsuite/gcc.target/aarch64/aapcs64/func-ret-4.= c:23: 1: note: in expansion of macro 'FUNC_VAL_CHECK' 0xa7ba44 simplify_subreg(machine_mode, rtx_def*, machine_mode, unsigned int) /work/alalaw01/src/gcc/gcc/simplify-rtx.c:5808 0xa7c4ef simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, unsigned= int) /work/alalaw01/src/gcc/gcc/simplify-rtx.c:6031 0x7ad097 operand_subword(rtx_def*, unsigned int, int, machine_mode) /work/alalaw01/src/gcc/gcc/emit-rtl.c:1611 0x7def4e move_block_from_reg(int, rtx_def*, int) /work/alalaw01/src/gcc/gcc/expr.c:1536 0x83a494 assign_parm_setup_block /work/alalaw01/src/gcc/gcc/function.c:3117 0x841a43 assign_parms /work/alalaw01/src/gcc/gcc/function.c:3857 0x842ffa expand_function_start(tree_node*) /work/alalaw01/src/gcc/gcc/function.c:5286 0x6e7496 execute /work/alalaw01/src/gcc/gcc/cfgexpand.c:6203 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See for instructions. FAIL: gcc.target/aarch64/aapcs64/func-ret-4.c compilation, -O1 (internal= =20 compiler error) Also at -O2, -O3 -g, -Og -g, -Os. -O0 is OK. simplify_subreg is called with outermode=3DDImode, op=3D (concat:CHI (reg:HI 76 [ t ]) (reg:HI 77 [ t+2 ])) innermode =3D BLKmode (which violates the assertion), byte=3D0. move_block_from_reg (in expr.c) calls operand_subword(x, i, 1, BLKmode), he= re=20 i=3D0 and x is the concat:CHI above, and operand_subword doesn't handle tha= t case=20 (well, it passes it onto simplify_subreg). In assign_parm_setup_block, I see 'mem =3D validize_mem (copy_rtx (stack_pa= rm))'=20 where stack_parm is again the same concat:CHI. This should be easily reproducible with a stage 1 compiler (aarch64_be-none= -elf). --Alan