From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1537 invoked by alias); 13 Dec 2010 10:25:47 -0000 Received: (qmail 1512 invoked by uid 22791); 13 Dec 2010 10:25:47 -0000 X-SWARE-Spam-Status: No, hits=-6.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 13 Dec 2010 10:25:42 +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.13.8/8.13.8) with ESMTP id oBDAPeBe029355 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 13 Dec 2010 05:25:40 -0500 Received: from zebedee.pink (ovpn-113-135.phx2.redhat.com [10.3.113.135]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id oBDAPd8K010350; Mon, 13 Dec 2010 05:25:40 -0500 Message-ID: <4D05F4A2.9060000@redhat.com> Date: Mon, 13 Dec 2010 12:43:00 -0000 From: Andrew Haley User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091209 Fedora/3.0-4.fc12 Thunderbird/3.0 MIME-Version: 1.0 To: gcc-patches@gcc.gnu.org Subject: Re: [PATCHx2,java] Fix java tree checking assert and References: <4D036A53.4030604@gmail.com> In-Reply-To: <4D036A53.4030604@gmail.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit 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-12/txt/msg00978.txt.bz2 On 12/11/2010 12:10 PM, Dave Korn wrote: > > Hello lists, > > > The attached patches fix a couple of problems(*) exposed by the tree ssa > loop prefetch pass in recent trunk builds of jc1: > > - loop prefetch generates an invalid gimple call to __builtin_prefetch(), > because it uses the integer_three_node global tree; because java doesn't take > advantage of the core build_common_tree_nodes_2() routine but sets up all the > nodes itself, this was missing any initialisation - integer_three_node is a > recent addition to the core, and the prefetch pass was adjusted to use it, but > java was inadvertently omitted. > > - turning on tree dump can cause a crash when it tries to generate a name for > a nested function, because put_decl_node doesn't understand that the context > of a function_decl can be another function_decl. > > The first I fixed by adding the missing initialisation - long-term I guess > it would be better to see if java couldn't use build_common_tree_nodes_2() in > some way, but that's not stage3 material. The second I fixed by making it > treat the nested function as just another level of scope, adding another > period-separated segment to the generated name. > > java/ChangeLog: > > * decl.c (java_init_decl_processing): Initialise integer_three_node. > * lang.c (put_decl_node): Handle nested function decls. > > I verified that this fixed the failing compile that I had seen in the > testsuite, now I'm taking the combined patchset for a full bootstrap and test > cycle on i686-pc-cygwin. OK if that completes without regressions? Yes, that looks OK. Andrew.