From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12962 invoked by alias); 19 Aug 2014 19:21:57 -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 12912 invoked by uid 89); 19 Aug 2014 19:21:56 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Tue, 19 Aug 2014 19:21:56 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s7JJLsgn008674 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 19 Aug 2014 15:21:54 -0400 Received: from [10.3.225.110] (vpn-225-110.phx2.redhat.com [10.3.225.110]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s7JJLrlI007452; Tue, 19 Aug 2014 15:21:54 -0400 Message-ID: <1408475925.2473.99.camel@surprise> Subject: Re: [PATCH 022/236] Make tablejump_p accept a rtx_jump_table_data ** From: David Malcolm To: Jeff Law Cc: gcc-patches@gcc.gnu.org Date: Tue, 19 Aug 2014 19:21:00 -0000 In-Reply-To: <53EAE0B4.1000903@redhat.com> References: <1407345815-14551-1-git-send-email-dmalcolm@redhat.com> <1407345815-14551-23-git-send-email-dmalcolm@redhat.com> <53EAE0B4.1000903@redhat.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2014-08/txt/msg01930.txt.bz2 On Tue, 2014-08-12 at 21:51 -0600, Jeff Law wrote: > On 08/06/14 11:20, David Malcolm wrote: > > gcc/ > > * rtl.h (tablejump_p): Strengthen third param from rtx * to > > rtx_jump_table_data **. > > > > * cfgbuild.c (make_edges): Introduce local "table", using it in > > place of "tmp" for jump table data. > > (find_bb_boundaries): Strengthen local "table" from rtx to > > rtx_jump_table_data *. > > * cfgcleanup.c (merge_blocks_move_successor_nojumps): Likewise. > > (outgoing_edges_match): Likewise for locals "table1" and "table2". > > (try_crossjump_to_edge): Likewise. > > * cfgrtl.c (try_redirect_by_replacing_jump): Likewise for local > > "table". > > (patch_jump_insn): Introduce local "table", using it in place of > > "tmp" for jump table data. > > (force_nonfallthru_and_redirect): Introduce local "table", so that > > call to tablejump_p can receive an rtx_jump_table_data **. Update > > logic around the call to overwrite "note" appropriately if > > tablejump_p returns non-zero. > > (get_last_bb_insn): Introduce local "table", using it in place of > > "tmp" for jump table data. > > * dwarf2cfi.c (create_trace_edges): Likewise. > > > > * config/arm/arm.c (get_jump_table_size): Strengthen param "insn" > > from rtx to rtx_jump_table_data *. > > (create_fix_barrier): Strengthen local "tmp" from rtx to > > rtx_jump_table_data *. > > (arm_reorg): Likewise for local "table". > > > > * config/s390/s390.c (s390_chunkify_start): Likewise. > > > > * config/spu/spu.c (spu_emit_branch_hint): Likewise. > > > > * jump.c (delete_related_insns): Strengthen local "lab_next" from > > rtx to rtx_jump_table_data *. > > > > * rtlanal.c (tablejump_p): Strengthen param "tablep" from rtx * to > > rtx_jump_table_data **. Add a checked cast when writing through > > the pointer: we know there that local "table" is non-NULL and that > > JUMP_TABLE_DATA_P (table) holds. > > (label_is_jump_target_p): Introduce local "table", using it in > > place of "tmp" for jump table data. > OK. Thanks. Committed to trunk as r214184, having verified bootstrap®rtest on x86_64-unknown-linux-gnu (Fedora 20) albeit in combination with patches 9-29, and verified that it builds standalone with targets: * x86_64-unknown-linux-gnu * arm-unknown-uclinux_eabi * s390-ibm-linux-gnu * spu-unknown-elf the latter three for coverage of the touched config subdirs.