From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28143 invoked by alias); 26 Jun 2015 07:06:54 -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 28130 invoked by uid 89); 26 Jun 2015 07:06:54 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.0 required=5.0 tests=AWL,BAYES_00,KAM_MXURI,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=no version=3.3.2 X-HELO: mail.ud10.udmedia.de Received: from ud10.udmedia.de (HELO mail.ud10.udmedia.de) (194.117.254.50) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 26 Jun 2015 07:06:51 +0000 Received: (qmail 27874 invoked from network); 26 Jun 2015 09:06:48 +0200 Received: from unknown (HELO x4) (ud10?360p3@91.65.248.138) by mail.ud10.udmedia.de with ESMTPSA (ECDHE-RSA-AES256-SHA encrypted, authenticated); 26 Jun 2015 09:06:48 +0200 Date: Fri, 26 Jun 2015 07:42:00 -0000 From: Markus Trippelsdorf To: gcc-patches@gcc.gnu.org, Mikhail Maltsev , rdsandiford@googlemail.com Subject: Re: Add .def file for public target instructions Message-ID: <20150626070647.GA402@x4> References: <87ioaegtcp.fsf@googlemail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87ioaegtcp.fsf@googlemail.com> X-SW-Source: 2015-06/txt/msg01890.txt.bz2 On 2015.06.23 at 19:41 +0100, Richard Sandiford wrote: > > gcc/ > * Makefile.in (TARGET_DEF): Add target-insns.def. > (.PRECIOUS, simple_rtl_generated_h): Add insn-target-def.h. > (build/gentarget-def.o): New rule. > (genprogrtl): Add target-def. > * target-insns.def, gentarget-def.c: New files. > * target.def: Add targetm.have_* and targetm.gen_* hooks, > based on the contents of target-insns.def. > * defaults.h (HAVE_simple_return, gen_simple_return): Delete. > (HAVE_return, gen_return): Delete. > * target-def.h: Include insn-target-def.h. > * cfgrtl.c (force_nonfallthru_and_redirect): Use targetm interface > instead of direct calls. Rely on them to do the appropriate assertions. > * function.c (gen_return_pattern): Likewise. Return an rtx_insn *. > (convert_jumps_to_returns): Use targetm interface instead of > direct calls. > (thread_prologue_and_epilogue_insns): Likewise. > * reorg.c (find_end_label, dbr_schedule): Likewise. > * shrink-wrap.h (SHRINK_WRAPPING_ENABLED): Likewise. > * shrink-wrap.c (convert_to_simple_return): Likewise. > (try_shrink_wrapping): Use SHRINK_WRAPPING_ENABLED. The patch breaks bootstrap on ppc64le. During libgcc configuration: conftest.c: In function 'main': conftest.c:16:1: internal compiler error: in as_a, at is-a.h:192 } ^ 0x1010411b as_a ../../gcc/gcc/is-a.h:192 0x1040ccd3 as_a ../../gcc/gcc/emit-rtl.c:4750 0x1040ccd3 emit_jump_insn_after(rtx_def*, rtx_def*) ../../gcc/gcc/emit-rtl.c:4749 0x104c378f emit_return_into_block(bool, basic_block_def*) ../../gcc/gcc/function.c:5633 0x104c3ee7 emit_return_for_exit(edge_def*, bool) ../../gcc/gcc/function.c:5779 0x104c9ee3 thread_prologue_and_epilogue_insns() ../../gcc/gcc/function.c:5961 0x104ca39f rest_of_handle_thread_prologue_and_epilogue ../../gcc/gcc/function.c:6443 0x104ca39f execute ../../gcc/gcc/function.c:6481 Please submit a full bug report, with preprocessed source if appropriate. -- Markus