From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3763 invoked by alias); 23 Aug 2010 16:31:16 -0000 Received: (qmail 3715 invoked by uid 22791); 23 Aug 2010 16:31:14 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE X-Spam-Check-By: sourceware.org Received: from mail-iw0-f175.google.com (HELO mail-iw0-f175.google.com) (209.85.214.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 23 Aug 2010 16:31:08 +0000 Received: by iwn2 with SMTP id 2so3307894iwn.20 for ; Mon, 23 Aug 2010 09:31:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.231.187.194 with SMTP id cx2mr6095910ibb.165.1282581065267; Mon, 23 Aug 2010 09:31:05 -0700 (PDT) Received: by 10.231.33.132 with HTTP; Mon, 23 Aug 2010 09:31:05 -0700 (PDT) In-Reply-To: References: Date: Mon, 23 Aug 2010 16:39:00 -0000 Message-ID: Subject: Re: [Patch PR 45260]: [4.5/4.6 Regression] g++4.5: -prefetch-loop-arrays internal compiler error: in verify_expr, at tree-cfg.c:2541 From: Richard Guenther To: "Fang, Changpeng" Cc: "gcc-patches@gcc.gnu.org" , "rguenther@suse.de" , "pinskia@gcc.gnu.org" , Zdenek Dvorak , "sebpop@gmail.com" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes 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 X-SW-Source: 2010-08/txt/msg01744.txt.bz2 On Sat, Aug 21, 2010 at 12:44 AM, Fang, Changpeng wrote: > Hi, > > The attached patch fixes PR 45260: =A0[4.5/4.6 Regression] g++4.5: -prefe= tch-loop-arrays internal compiler error: in verify_expr, at tree-cfg.c:2541 > > Problem: The prefetch pass generates an ADDR_EXPR for COMPONENT_REF(VIEW_= CONVERT_EXPR(SSA_NAME)) whose > address could not be taken, and thus invokes an assertion failure in veri= fy_expr. > > Solution: Don't generate prefetch for references whose base address could= not be taken. > > In this patch, we make may_be_nonaddressable_p (tree expr) global and use= it in the prefetch pass. > > This patch passed bootstrapping and gcc regression tests on x86_64-unknow= n-linux-gnu systems ib both > trunk and 4.5 branch. > > Is it OK to commit to trunk and 4.5 branch? Ok. Thanks, Richard. > Thanks and have a wonderful weekend! > > Changpeng