From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4005 invoked by alias); 7 Sep 2011 14:22:16 -0000 Received: (qmail 3995 invoked by uid 22791); 7 Sep 2011 14:22:15 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,TW_TM X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 07 Sep 2011 14:21:56 +0000 From: "jakub at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug debug/50317] [4.7 Regression] missing DW_OP_GNU_implicit_pointer Date: Wed, 07 Sep 2011 14:23:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: debug X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: jakub at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.7.0 X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-09/txt/msg00516.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50317 --- Comment #2 from Jakub Jelinek 2011-09-07 14:21:51 UTC --- The first difference is in fre1, just a better optimization: @@ -22,7 +22,7 @@ foo (int i) p$1_9 = &j; # DEBUG p$1 => p$1_9 D.2704_2 = p$0_10; - D.2705_3 = *D.2704_2; + D.2705_3 = i.0_1; D.2706_4 = p$1_9; D.2707_5 = i.0_1; D.2703_6 = D.2705_3 + D.2707_5; In *.mergephi1 the difference is still pretty minor: @@ -19,8 +19,7 @@ foo (int i) j = i.0_1; # DEBUG p$0 => &i # DEBUG p$1 => &j - D.2705_3 = i; - D.2703_6 = i.0_1 + D.2705_3; + D.2703_6 = i.0_1 + i.0_1; return D.2703_6; } but in *.cddce1 the j variable is removed altogether: : i.0_1 = i; - j = i.0_1; # DEBUG p$0 => &i # DEBUG p$1 => &j - D.2705_3 = i; - D.2703_6 = i.0_1 + D.2705_3; + D.2703_6 = i.0_1 + i.0_1; return D.2703_6; } in r175915 the j variable would survive in the IL until *.alias where it was determined not address taken, gimplified and DEBUG j => j_11 added and during copyprop2 the debug stmt was adjusted after j_11 removal.