aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSanjoy Das <sanjoyd@sourceware.org>2013-01-17 14:17:16 +0000
committerSanjoy Das <sanjoyd@sourceware.org>2013-01-17 14:17:16 +0000
commitc9fb1240f2fce4fe8808181dcd961dfc45008087 (patch)
treebe2f43dc3b494dac69b080a8d7c68ede3b2efac2 /gdb
parentdb334a01640a2f0e927e824d0d9f5d83d18d942d (diff)
downloadgdb-c9fb1240f2fce4fe8808181dcd961dfc45008087.zip
gdb-c9fb1240f2fce4fe8808181dcd961dfc45008087.tar.gz
gdb-c9fb1240f2fce4fe8808181dcd961dfc45008087.tar.bz2
* jit.c (jit_reader_load_command): Interpret the jit reader name as an
absolute path if it begins with a forward slash.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/doc/ChangeLog4
-rw-r--r--gdb/doc/gdb.texinfo22
-rw-r--r--gdb/jit.c6
4 files changed, 27 insertions, 10 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 9a29599..67af8d2 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2012-01-17 Sanjoy Das <sanjoy@playingwithpointers.com>
+ * jit.c (jit_reader_load_command): Interpret the jit reader name
+ as an absolute path if it begins with a forward slash.
+
+2012-01-17 Sanjoy Das <sanjoy@playingwithpointers.com>
+
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 5281095..b53b7a8 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,3 +1,7 @@
+2012-01-17 Sanjoy Das <sanjoy@playingwithpointers.com>
+ * gdb.texinfo (Using JIT Debug Info Readers): Change documentation
+ to reflect that jit-reader-load now supports absolute file-names.
+
2013-01-16 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Set Catchpoints): Document "catch signal".
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 0fb6601..728e44b 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -33973,15 +33973,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 f542f9e..4623f15 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%s", SLASH_STRING, jit_reader_dir, args);
prev_cleanup = make_cleanup (xfree, so_name);
loaded_jit_reader = jit_reader_load (so_name);