From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1978 invoked by alias); 26 Jun 2007 18:08:37 -0000 Received: (qmail 1966 invoked by uid 22791); 26 Jun 2007 18:08:36 -0000 X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 26 Jun 2007 18:08:32 +0000 Received: (qmail 31438 invoked from network); 26 Jun 2007 18:08:29 -0000 Received: from unknown (HELO localhost) (jimb@127.0.0.2) by mail.codesourcery.com with ESMTPA; 26 Jun 2007 18:08:29 -0000 To: Michael Eager Cc: gdb@sources.redhat.com Subject: Re: Non-uniform address spaces References: <467D4AE3.7020505@eagercon.com> <20070623212557.GB3448@caradoc.them.org> <467D9503.9060804@eagercon.com> <46800482.4020700@eagercon.com> <46801FDD.4020408@eagercon.com> <468047F0.7060207@eagercon.com> <46814B4C.7080302@eagercon.com> From: Jim Blandy Date: Tue, 26 Jun 2007 18:08:00 -0000 In-Reply-To: <46814B4C.7080302@eagercon.com> (Michael Eager's message of "Tue, 26 Jun 2007 10:22:20 -0700") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-06/txt/msg00310.txt.bz2 Michael Eager writes: > Perhaps. I'll look at that. How does this work for TLS now? You probably want to start at dwarf2expr.c, and look at our implementation of DW_OP_GNU_push_tls_address. That's invoking a callback of which dwarf2loc.c:dwarf_expr_tls_address is a reasonable representative. You can follow forward from there. Backing up a bit, I should ask: is contributing this work to the public sources one of your goals? If it's not, I'm happy to answer questions as best I can, but I shouldn't spend too much time on it. If it is, then we (meaning the GDB developers, including you) need to go at this in detail, starting with the meaning of the source language, its ABI, its representation in the debugging info, the facilities of the machine it's running on, and how the language achieves its semantics on that machine. This is not going to go well if there's just a big patch at the end. :)