From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23976 invoked by alias); 10 Dec 2003 20:58:38 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 23963 invoked from network); 10 Dec 2003 20:58:37 -0000 Received: from unknown (HELO touchme.toronto.redhat.com) (216.129.200.20) by sources.redhat.com with SMTP; 10 Dec 2003 20:58:37 -0000 Received: from redhat.com (toocool.toronto.redhat.com [172.16.14.72]) by touchme.toronto.redhat.com (Postfix) with ESMTP id 861E980018E; Wed, 10 Dec 2003 15:58:37 -0500 (EST) Message-ID: <3FD788FD.6020305@redhat.com> Date: Wed, 10 Dec 2003 20:58:00 -0000 From: "J. Johnston" Organization: Red Hat Inc. User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 X-Accept-Language: en-us, en MIME-Version: 1.0 To: davidm@hpl.hp.com Cc: Andrew Cagney , Kevin Buettner , gdb-patches@sources.redhat.com, davidm@napali.hpl.hp.com Subject: Re: RFA: ia64 portion of libunwind patch References: <3FA2B71A.3080905@redhat.com> <3FA2CA1B.7000502@redhat.com> <16290.59502.799536.383397@napali.hpl.hp.com> <3FAC12D3.2070207@redhat.com> <16300.8192.489647.740612@napali.hpl.hp.com> <3FAC2454.2030009@redhat.com> <16300.9949.513264.716812@napali.hpl.hp.com> <3FAC2D03.8070607@redhat.com> <16300.12503.585501.180768@napali.hpl.hp.com> <3FAC33B3.2030403@redhat.com> <1031108001337.ZM18506@localhost.localdomain> <3FAC388A.10207@redhat.com> <16300.39298.323956.667764@napali.hpl.hp.com> <3FAD7F01.2050407@gnu.org> <16304.3297.662733.250523@napali.hpl.hp.com> <3FB0149C.1060908@redhat.com> <16323.61371.6654.950171@napali.hpl.hp.com> <16334.39106.297492.636397@napali.hpl.hp.com> <3FCFC9FD.4040106@redhat.com> <16335.54210.785826.438051@napali.hpl.hp.com> In-Reply-To: <16335.54210.785826.438051@napali.hpl.hp.com> Content-Type: multipart/mixed; boundary="------------010207090203020708030306" X-SW-Source: 2003-12/txt/msg00303.txt.bz2 This is a multi-part message in MIME format. --------------010207090203020708030306 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 1463 David Mosberger wrote: >>>>>>On Thu, 04 Dec 2003 18:57:49 -0500, "J. Johnston" said: > > > Jeff> A questions regarding the .so name issue you mentioned. We > Jeff> are already grabbing the function names from UNW_OBJ macro > Jeff> from the generic libunwind.h header. I think we could > Jeff> generate the libunwind.so name similarly using the UNW_TARGET. > Jeff> Any problems with this strategy? (any scenarios where this > Jeff> value doesn't match the extension used by the libunwind > Jeff> library?) > > No, that sounds fine to me. The part that I don't understand is that > at the moment it seems that only one libunwind-$TARGET.so can be > loaded. With a multi-target-capable gdb, that would obviously not be > sufficient, as you'd want to load, say, libunwind-ia64.so.1 for ia64 > and libunwind-x86.so.1 for x86. But it's mostly a theoretical issue > at this point. > > Thanks, > > --david > I have created the patch to use UNW_TARGET. Yes, the current implementation doesn't support multiple gdb targets, but it is set up to make such a task relatively straightforward in the future (i.e. simply put the function handles off of the target vector and pass in the target name). Kevin, ok to commit? -- Jeff J. 2003-12-10 Jeff Johnston * libunwind-frame.c: If LIBUNWIND_SO not defined, define it to be libunwind_target_lib. (libunwind_target_lib): New static char string. --------------010207090203020708030306 Content-Type: text/plain; name="libunwind.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="libunwind.patch" Content-length: 941 Index: libunwind-frame.c =================================================================== RCS file: /cvs/src/src/gdb/libunwind-frame.c,v retrieving revision 1.1 diff -u -r1.1 libunwind-frame.c --- libunwind-frame.c 14 Nov 2003 21:17:51 -0000 1.1 +++ libunwind-frame.c 10 Dec 2003 20:52:10 -0000 @@ -46,7 +46,7 @@ static struct gdbarch_data *libunwind_descr_handle; #ifndef LIBUNWIND_SO -#define LIBUNWIND_SO "libunwind.so" +#define LIBUNWIND_SO libunwind_target_lib #endif /* Required function pointers from libunwind. */ @@ -83,6 +83,8 @@ static char *create_addr_space_name = STRINGIFY(UNW_OBJ(create_addr_space)); static char *search_unwind_table_name = STRINGIFY(UNW_OBJ(search_unwind_table)); static char *find_dyn_list_name = STRINGIFY(UNW_OBJ(find_dyn_list)); + +static char *libunwind_target_lib = "libunwind-" STRINGIFY(UNW_TARGET) ".so"; static struct libunwind_descr * libunwind_descr (struct gdbarch *gdbarch) --------------010207090203020708030306--