aboutsummaryrefslogtreecommitdiff
path: root/include/plugin-api.h
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2009-01-15 01:28:14 +0000
committerCary Coutant <ccoutant@google.com>2009-01-15 01:28:14 +0000
commitfa7f3e72292434483fbce576f8613a1af727df6c (patch)
tree17c676050f4cd12f6dc5d22b2fe924328eb62b5a /include/plugin-api.h
parent1a4fdb0ad3f543ad84850a8202058735a1e403f6 (diff)
downloadgdb-fa7f3e72292434483fbce576f8613a1af727df6c.zip
gdb-fa7f3e72292434483fbce576f8613a1af727df6c.tar.gz
gdb-fa7f3e72292434483fbce576f8613a1af727df6c.tar.bz2
* plugin-api.h (LDPS_BAD_HANDLE): New constant.
(ld_plugin_get_input_file): New typedef. (ld_plugin_release_input_file): New typedef. (LDPT_GET_INPUT_FILE, LDPT_RELEASE_INPUT_FILE): New constants. (struct ld_plugin_tv): Add two new fields.
Diffstat (limited to 'include/plugin-api.h')
-rw-r--r--include/plugin-api.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/plugin-api.h b/include/plugin-api.h
index a90fa23..f536d57 100644
--- a/include/plugin-api.h
+++ b/include/plugin-api.h
@@ -40,6 +40,7 @@ enum ld_plugin_status
{
LDPS_OK = 0,
LDPS_NO_SYMS, /* Attempt to get symbols that haven't been added. */
+ LDPS_BAD_HANDLE, /* No claimed object associated with given handle. */
LDPS_ERR
/* Additional Error codes TBD. */
};
@@ -165,6 +166,20 @@ enum ld_plugin_status
(*ld_plugin_add_symbols) (void *handle, int nsyms,
const struct ld_plugin_symbol *syms);
+/* The linker's interface for getting the input file information with
+ an open (possibly re-opened) file descriptor. */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_get_input_file) (const void *handle,
+ struct ld_plugin_input_file *file);
+
+/* The linker's interface for releasing the input file. */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_release_input_file) (const void *handle);
+
/* The linker's interface for retrieving symbol resolution information. */
typedef
@@ -207,7 +222,9 @@ enum ld_plugin_tag
LDPT_ADD_SYMBOLS,
LDPT_GET_SYMBOLS,
LDPT_ADD_INPUT_FILE,
- LDPT_MESSAGE
+ LDPT_MESSAGE,
+ LDPT_GET_INPUT_FILE,
+ LDPT_RELEASE_INPUT_FILE
};
/* The plugin transfer vector. */
@@ -226,6 +243,8 @@ struct ld_plugin_tv
ld_plugin_get_symbols tv_get_symbols;
ld_plugin_add_input_file tv_add_input_file;
ld_plugin_message tv_message;
+ ld_plugin_get_input_file tv_get_input_file;
+ ld_plugin_release_input_file tv_release_input_file;
} tv_u;
};