From patchwork Fri Mar 29 12:05:41 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Bosscher X-Patchwork-Id: 232387 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "localhost", Issuer "www.qmailtoaster.com" (not verified)) by ozlabs.org (Postfix) with ESMTPS id 024842C00C7 for ; Fri, 29 Mar 2013 23:06:48 +1100 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:from:date:message-id:subject:to:content-type; q= dns; s=default; b=utJd6p6HyGHMldKjD7wsZdNC/1uuglmpaXaBJLzReOYBsZ 0IxN8J6kiDjuq4SCeQjHk7SRbkVt9lfDTPeCIR47TpduXD1rxxeSdMSTpX9MfUce WfwP+g/Ces02kF1W0vH3bRUqfwx4IZXjg3zV4TVitSp10jQklempESn8EkZmI= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:from:date:message-id:subject:to:content-type; s= default; bh=nCQirZIOr6UTSEDvbwHtlt6Anx0=; b=sD1FSjy51dDjDmwP5h5i By1gO73jaubp8SFEtlA+q3nWvjp+c+/mx+DO4vKhTCVMadYC2Zxu/X+1DL3HIhlX 6/NpYkO/kK+og/tUFzFP74Jp4beRANIN6pQhd2E8GGa7hhmjzZN7dI4M22DnlEwW Bhwx0mrqMAmXBRR7wT+CJ8I= Received: (qmail 6408 invoked by alias); 29 Mar 2013 12:06:37 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 6358 invoked by uid 89); 29 Mar 2013 12:06:27 -0000 X-Spam-SWARE-Status: No, score=-4.4 required=5.0 tests=AWL, BAYES_00, FREEMAIL_FROM, KHOP_RCVD_TRUST, RCVD_IN_DNSWL_LOW, RCVD_IN_HOSTKARMA_YE autolearn=ham version=3.3.1 Received: from mail-ve0-f178.google.com (HELO mail-ve0-f178.google.com) (209.85.128.178) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Fri, 29 Mar 2013 12:06:23 +0000 Received: by mail-ve0-f178.google.com with SMTP id db10so467989veb.9 for ; Fri, 29 Mar 2013 05:06:21 -0700 (PDT) X-Received: by 10.220.153.143 with SMTP id k15mr1574619vcw.33.1364558781565; Fri, 29 Mar 2013 05:06:21 -0700 (PDT) MIME-Version: 1.0 Received: by 10.58.68.228 with HTTP; Fri, 29 Mar 2013 05:05:41 -0700 (PDT) From: Steven Bosscher Date: Fri, 29 Mar 2013 13:05:41 +0100 Message-ID: Subject: [patch] PR56729 To: GCC Patches Hello, It looks like there are places in the middle end that use remove_insn on insns that are not actually emitted. This breaks the assert I added in df_insn_delete. The patch disables the assert for now. The comment before the assert is now even messier than before but I think it's better to explain why the assert cannot work than to remove the comment and the assert altogether. Bootstrapped&tested on powerpc64-unknown-linux-gnu (also tested 32bits ppc). OK for trunk? Ciao! Steven PR middle-end/56729 * df-scan.c (df_insn_delete): Disable failing assert. Index: df-scan.c =================================================================== --- df-scan.c (revision 197180) +++ df-scan.c (working copy) @@ -1158,8 +1158,17 @@ df_insn_delete (rtx insn) In any case, we expect BB to be non-NULL at least up to register allocation, so disallow a non-NULL BB up to there. Not perfect but better than nothing... */ - + /* ??? bb can also be NULL if lower-subreg.c:resolve_simple_mov emits + an insn into a sequence and then does delete_insn on it. Not sure + if that makes sense, but for now it means this assert cannot work. + See PR56738. + Disable for now but revisit before the end of GCC 4.9 stage1. */ +#if 0 gcc_checking_assert (bb != NULL || reload_completed); +#else + if (bb == NULL) + return; +#endif df_grow_bb_info (df_scan); df_grow_reg_info ();