From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 59074 invoked by alias); 12 Mar 2016 08:26:43 -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 59050 invoked by uid 89); 12 Mar 2016 08:26:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=alans 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; Sat, 12 Mar 2016 08:26:41 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (Postfix) with ESMTPS id 42D903812A6; Sat, 12 Mar 2016 08:26:40 +0000 (UTC) Received: from slagheap.utah.redhat.com ([10.3.113.4]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u2C8QdCW015945; Sat, 12 Mar 2016 03:26:39 -0500 Subject: Re: [PATCH] PR69195, Reload confused by invalid reg equivs To: Jakub Jelinek , Alan Modra References: <20160304145430.GD9617@bubble.grove.modra.org> <56D9C86A.8050302@redhat.com> <20160307144656.GF9617@bubble.grove.modra.org> <20160310091808.GO9617@bubble.grove.modra.org> <877fh8ycip.fsf@linux-m68k.org> <20160311221624.GB16812@bubble.grove.modra.org> <20160311231350.GC16812@bubble.grove.modra.org> <20160312075821.GK3017@tucnak.redhat.com> Cc: Andreas Schwab , Bernd Schmidt , gcc-patches@gcc.gnu.org From: Jeff Law Message-ID: <56E3D2BF.90508@redhat.com> Date: Sat, 12 Mar 2016 08:26:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160312075821.GK3017@tucnak.redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2016-03/txt/msg00729.txt.bz2 On 03/12/2016 12:58 AM, Jakub Jelinek wrote: > On Sat, Mar 12, 2016 at 09:43:50AM +1030, Alan Modra wrote: >> The underlying problem happens somewhere in tree-ssa-dse.c. So we get >> an indirect jump to a random location instead of a jump to 0. > > Well, the testcase is there just to make sure we don't ICE on it. > And, changing just DSE can't be a complete solution, because one can use > uninitialized var from the beginning: > int > foo (void) > { > int x; > goto *&x; > } > > Jakub > I believe Alan's point is DSE deleted the assignment to x which can't be right as long as we've left in goto *&x. The goto *&x should be a use of x and thus should have kept the assignment live. Jeff