From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22809 invoked by alias); 4 Nov 2012 17:00:09 -0000 Received: (qmail 22659 invoked by uid 22791); 4 Nov 2012 17:00:04 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,SPF_SOFTFAIL X-Spam-Check-By: sourceware.org Received: from mail-da0-f41.google.com (HELO mail-da0-f41.google.com) (209.85.210.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 04 Nov 2012 16:59:56 +0000 Received: by mail-da0-f41.google.com with SMTP id i14so2466022dad.0 for ; Sun, 04 Nov 2012 08:59:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-gm-message-state; bh=LvXA1GEH8bzrR76e4GCxAKhAaWfLtcuscWN8Ey2FEKo=; b=VknBVUQll5KD89ujoTdDDvxhCpP4cjaJCGU8XRCnqFAGum2ros/w5pOQpKNHA484V7 v94BaPQN4/HxW7s/a3vho6q1g+n6WWSzXXErATXWWMiwJBXIoe3EqlgJdOB8j0fXrVdY d9a9O78XjMksUrhcrmmE6Bv8yWMpreHi6w4GF2BpIwoagEDozewc0hRFZL1e0p4PAFcI kuFY4ypG5R84kY2uvCYeu1CL4GdTAZwvsaPTw0Y+SVvuo5tw9hBc8MoYspqPPAGx2+Yw yrGW0Mn7U1A/uJoTqxwiAHEksEUHjYXCEgshSW/hd25HkGiwydTW8FPoSMz3z6hWTDJg +oXQ== Received: by 10.66.83.201 with SMTP id s9mr21655713pay.74.1352048395277; Sun, 04 Nov 2012 08:59:55 -0800 (PST) Received: from divine-comedy.divine-comedy (ec2-122-248-217-158.ap-southeast-1.compute.amazonaws.com. [122.248.217.158]) by mx.google.com with ESMTPS id bd2sm9167531pab.36.2012.11.04.08.59.52 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 04 Nov 2012 08:59:54 -0800 (PST) From: Sanjoy Das To: gdb-patches@sourceware.org Cc: Sanjoy Das Subject: [PATCH 2/3] Make jit-reader-load accept absolute paths to reader shared objects. Date: Sun, 04 Nov 2012 17:00:00 -0000 Message-Id: <1352048631-25042-3-git-send-email-sanjoy@playingwithpointers.com> In-Reply-To: <1352048631-25042-1-git-send-email-sanjoy@playingwithpointers.com> References: <1352048631-25042-1-git-send-email-sanjoy@playingwithpointers.com> X-Gm-Message-State: ALoCoQmvUkSpYkqfephl1E0RNv82oQqXdU1UVhtvFtrfsUC3F1u+49G0FrSMf75dgsSBZLmdneUH X-IsSubscribed: yes 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 X-SW-Source: 2012-11/txt/msg00078.txt.bz2 --- gdb/ChangeLog | 5 +++++ gdb/doc/ChangeLog | 4 ++++ gdb/doc/gdb.texinfo | 22 +++++++++++++--------- gdb/jit.c | 6 +++++- 4 files changed, 27 insertions(+), 10 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0999b30..912d1e4 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2012-11-04 Sanjoy Das + * jit.c (jit_reader_load_command): Interpret the jit reader name + as an absolute path if it begins with a forward slash. + +2012-11-04 Sanjoy Das + PR gdb/14550 * jit.c (finalize_symtab): Ensure that only the global block has a diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index a717c5a..468a3ed 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,7 @@ +2012-11-04 Sanjoy Das + * gdb.texinfo (Using JIT Debug Info Readers): Change documentation + to reflect that jit-reader-load now supports absolute file-names. + 2012-11-03 Yao Qi * observer.texi (GDB Observers): Remove observer diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 21db475..d3bbc11 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -33470,15 +33470,19 @@ Readers can be loaded and unloaded using the @code{jit-reader-load} and @code{jit-reader-unload} commands. @table @code -@item jit-reader-load @var{reader-name} -Load the JIT reader named @var{reader-name}. On a UNIX system, this -will usually load @file{@var{libdir}/gdb/@var{reader-name}}, where -@var{libdir} is the system library directory, usually -@file{/usr/local/lib}. Only one reader can be active at a time; -trying to load a second reader when one is already loaded will result -in @value{GDBN} reporting an error. A new JIT reader can be loaded by -first unloading the current one using @code{jit-reader-load} and then -invoking @code{jit-reader-load}. +@item jit-reader-load @var{reader} +Load the JIT reader named @var{reader}. @var{reader} is a shared +object specified as either an absolute or a relative file name. In +the latter case, @value{GDBN} will try to load the reader from a +pre-configured directory, usually @file{@var{libdir}/gdb/} on a UNIX +system (here @var{libdir} is the system library directory, often +@file{/usr/local/lib}). + +Only one reader can be active at a time; trying to load a second +reader when one is already loaded will result in @value{GDBN} +reporting an error. A new JIT reader can be loaded by first unloading +the current one using @code{jit-reader-unload} and then invoking +@code{jit-reader-load}. @item jit-reader-unload Unload the currently loaded JIT reader. diff --git a/gdb/jit.c b/gdb/jit.c index eff2ed6..fb6658f 100644 --- a/gdb/jit.c +++ b/gdb/jit.c @@ -25,6 +25,7 @@ #include "breakpoint.h" #include "command.h" #include "dictionary.h" +#include "filenames.h" #include "frame-unwind.h" #include "gdbcmd.h" #include "gdbcore.h" @@ -208,7 +209,10 @@ jit_reader_load_command (char *args, int from_tty) if (loaded_jit_reader != NULL) error (_("JIT reader already loaded. Run jit-reader-unload first.")); - so_name = xstrprintf ("%s/%s", jit_reader_dir, args); + if (IS_ABSOLUTE_PATH (args)) + so_name = xstrdup (args); + else + so_name = xstrprintf ("%s/%s", jit_reader_dir, args); prev_cleanup = make_cleanup (xfree, so_name); loaded_jit_reader = jit_reader_load (so_name); -- 1.7.10.4