From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 118223 invoked by alias); 6 May 2015 12:23:10 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 118206 invoked by uid 89); 6 May 2015 12:23:08 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.8 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 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; Wed, 06 May 2015 12:23:07 +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.14.4/8.14.4) with ESMTP id t46CN5Io027750 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Wed, 6 May 2015 08:23:05 -0400 Received: from host1.jankratochvil.net (ovpn-116-27.ams2.redhat.com [10.36.116.27]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t46CN1BH008030 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 6 May 2015 08:23:04 -0400 Date: Wed, 06 May 2015 12:23:00 -0000 From: Jan Kratochvil To: Pedro Alves Cc: gdb-patches@sourceware.org, Phil Muldoon Subject: Re: [PATCH v3 7/9] compile: New 'compile print' Message-ID: <20150506122301.GA20986@host1.jankratochvil.net> References: <20150411194322.29128.52477.stgit@host1.jankratochvil.net> <20150411194418.29128.3411.stgit@host1.jankratochvil.net> <5540FD9E.1020005@redhat.com> <20150503140557.GB18394@host1.jankratochvil.net> <5549EB49.2050206@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5549EB49.2050206@redhat.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg00097.txt.bz2 On Wed, 06 May 2015 12:22:01 +0200, Pedro Alves wrote: > On 05/03/2015 03:05 PM, Jan Kratochvil wrote: > > Function returns NULL only for COMPILE_I_PRINT_ADDRESS_SCOPE when > > COMPILE_I_PRINT_VALUE_SCOPE should have been used instead. > > What does "should have been used instead" mean? Is that a bug in the > caller? Currently GDB has to decide whether it should compile with GCC memcpy (buffer, &variable, ...) or memcpy (buffer, variable, ...) depending on whether 'variable' is scalar (first) or an array (second). Currently GDB can figure it out only from DWARF, after compiling it first. This is all a hack how to get it working for live targets without implementing the compiler IR (intermediate representation) interpreter in GDB (making 'compile' commands compatible with core files). So far AFAIK C++ live functionality has been a top priority, not the IR interpreter. This COMPILE_I_PRINT_ADDRESS_SCOPE-or-COMPILE_I_PRINT_VALUE_SCOPE conditional would be some simple runtime conditional in the IR interpreter instead. If an implementation on top of IR interpreter is required for these patches then this whole patch series should be dropped and we need to start to work on the IR interpreter instead. Jan