From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12260 invoked by alias); 15 Sep 2012 16:09:21 -0000 Received: (qmail 12233 invoked by uid 22791); 15 Sep 2012 16:09:18 -0000 X-SWARE-Spam-Status: No, hits=-5.8 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD,TW_IB,TW_XF X-Spam-Check-By: sourceware.org Received: from mail-pz0-f47.google.com (HELO mail-pz0-f47.google.com) (209.85.210.47) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 15 Sep 2012 16:09:05 +0000 Received: by daks35 with SMTP id s35so3075960dak.20 for ; Sat, 15 Sep 2012 09:09:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-system-of-record:x-gm-message-state; bh=T15dvoHuAu95HdR2HXsFr9pvAfGiNP3I4OF4pqSyrTQ=; b=WK2R+VWFmo7884GIkXrXvYhEIVNYkbhCAaHRoqs2ZnMNUrv6CEqTYLOSLWbXYQG6ym X+K8f8rJeBhXWE/QIJKun7F8/gc1cB4I2b7cAMLgitUOcJK65rQ6LNzn/gFKUYOQKJfm IBsTUdVIKhar1SImIHXQ6KaIIN9jzN+CnwfLbJdMZMYGVVzQl1CLYlxVt+WbJmL29wID 9pl/oCJstUyvan/F/6gAOw5SRi7xKTaupqRdHTO+QsXE9nbpQaz9iJjbiQGDe5RafOzb 9KJFmiTAQbHlO72yO6J7sz2EtNQKyatbCg0l+V5GgM+QYzQufvqySq227NyWyWCiui1J UONA== Received: by 10.66.85.167 with SMTP id i7mr9740764paz.8.1347725345201; Sat, 15 Sep 2012 09:09:05 -0700 (PDT) MIME-Version: 1.0 Received: by 10.66.85.167 with SMTP id i7mr9740738paz.8.1347725345043; Sat, 15 Sep 2012 09:09:05 -0700 (PDT) Received: by 10.68.200.41 with HTTP; Sat, 15 Sep 2012 09:09:04 -0700 (PDT) In-Reply-To: References: <50243480.7090803@redhat.com> <50254A50.8070208@redhat.com> <50255B35.9020705@redhat.com> <50258712.4070002@redhat.com> <502E6774.8050609@redhat.com> <503F7876.7030606@redhat.com> <503F84A9.8010504@redhat.com> <503F95D8.5010506@redhat.com> <50463661.1020303@redhat.com> <1346839095.9368.1.camel@springer.wildebeest.org> Date: Sat, 15 Sep 2012 16:09:00 -0000 Message-ID: Subject: Re: [PATCH] Set correct source location for deallocator calls From: Dehao Chen To: "H.J. Lu" Cc: Andrew Pinski , Mark Wielaard , Bryce McKinlay , Andrew Haley , Richard Henderson , Jason Merrill , Richard Guenther , GCC Patches , David Li , java@gcc.gnu.org Content-Type: text/plain; charset=ISO-8859-1 X-System-Of-Record: true X-Gm-Message-State: ALoCoQny+Rp+OM3Njkb+XyGkEI9LjXxdo291kR+oBs6bd61hvepUuTmcf1XxD/HOmXAqtzzVte8FREEu4O9ajl2DHIK9gtNf+IXmoUMGp8EWbSt3GpQ7nVrnc4LlCFLEEjKiYbhEFD1B4k5qJQoN1a2+96E84ysidbTqpingJ62HGtLeIsTgEr3hffOet6fUNnTAQ9Iv9CDm Mailing-List: contact java-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-owner@gcc.gnu.org X-SW-Source: 2012-09/txt/msg00020.txt.bz2 I tried the up-to-date addr2line on any "gcc -g" generated code, it does not work either. This is because in the new dwarf, the DW_AT_high_pc now actually means the size. e.g. <1><9b>: Abbrev Number: 2 (DW_TAG_subprogram) <9c> DW_AT_external : 1 <9c> DW_AT_name : bar DW_AT_decl_file : 1 DW_AT_decl_line : 8 DW_AT_linkage_name: (indirect string, offset: 0x7b): _Z3barv DW_AT_type : <0x8d> DW_AT_low_pc : 0x400583 DW_AT_high_pc : 0x37 0x0 DW_AT_frame_base : 1 byte block: 9c (DW_OP_call_frame_cfa) DW_AT_GNU_all_call_sites: 1 DW_AT_sibling : <0xff> However, addr2line still thinks DW_AT_high_pc means "high_pc". I think we should wait for binutil to catch up with gcc. Thanks, Dehao On Sat, Sep 15, 2012 at 8:55 PM, H.J. Lu wrote: > On Fri, Sep 14, 2012 at 9:27 PM, Andrew Pinski wrote: >> On Fri, Sep 14, 2012 at 9:25 PM, H.J. Lu wrote: >>> On Sat, Sep 8, 2012 at 2:42 PM, Dehao Chen wrote: >>>> Hi, >>>> >>>> I've added a libjava unittest which verifies that this patch will not >>>> break Java debug info. I've also incorporated Richard's review in the >>>> previous mail. Attached is the new patch, which passed bootstrap and >>>> all gcc/libjava testsuites on x86. >>>> >>>> Is it ok for trunk? >>>> >>>> Thanks, >>>> Dehao >>>> >>>> gcc/ChangeLog: >>>> 2012-09-08 Dehao Chen >>>> >>>> * tree-eh.c (goto_queue_node): New field. >>>> (record_in_goto_queue): New parameter. >>>> (record_in_goto_queue_label): New parameter. >>>> (lower_try_finally_dup_block): New parameter. >>>> (maybe_record_in_goto_queue): Update source location. >>>> (lower_try_finally_copy): Likewise. >>>> (honor_protect_cleanup_actions): Likewise. >>>> * gimplify.c (gimplify_expr): Reset the location to unknown. >>>> >>>> gcc/testsuite/ChangeLog: >>>> 2012-09-08 Dehao Chen >>>> >>>> * g++.dg/debug/dwarf2/deallocator.C: New test. >>>> >>>> libjava/ChangeLog: >>>> 2012-09-08 Dehao Chen >>>> >>>> * testsuite/libjava.lang/sourcelocation.java: New cases. >>>> * testsuite/libjava.lang/sourcelocation.out: New cases. >>> >>> On Linux/x86, I got >>> >>> FAIL: sourcelocation -O3 -findirect-dispatch output - source compiled test >>> FAIL: sourcelocation -O3 output - source compiled test >>> FAIL: sourcelocation -findirect-dispatch output - source compiled test >>> FAIL: sourcelocation output - source compiled test >>> >>> spawn [open ...]^M >>> -1 >>> -1 >>> -1 >>> PASS: sourcelocation -findirect-dispatch execution - source compiled test >>> FAIL: sourcelocation -findirect-dispatch output - source compiled test >> >> I bet you have an older addr2line installed. >> > > I am using addr2line from binutils 20120914. > > > -- > H.J.