summaryrefslogtreecommitdiff
path: root/include/plugin-api.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/plugin-api.h')
-rw-r--r--include/plugin-api.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/plugin-api.h b/include/plugin-api.h
index 379828ba854..395d5bcc598 100644
--- a/include/plugin-api.h
+++ b/include/plugin-api.h
@@ -260,6 +260,13 @@ enum ld_plugin_status
(*ld_plugin_claim_file_handler) (
const struct ld_plugin_input_file *file, int *claimed);
+/* The plugin library's "claim file" handler, version 2. */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_claim_file_handler_v2) (
+ const struct ld_plugin_input_file *file, int *claimed, int known_used);
+
/* The plugin library's "all symbols read" handler. */
typedef
@@ -278,6 +285,13 @@ typedef
enum ld_plugin_status
(*ld_plugin_register_claim_file) (ld_plugin_claim_file_handler handler);
+/* The linker's interface for registering the "claim file" handler,
+ version 2. */
+
+typedef
+enum ld_plugin_status
+(*ld_plugin_register_claim_file_v2) (ld_plugin_claim_file_handler_v2 handler);
+
/* The linker's interface for registering the "all symbols read" handler. */
typedef
@@ -553,6 +567,7 @@ enum ld_plugin_tag
LDPT_GET_WRAP_SYMBOLS,
LDPT_ADD_SYMBOLS_V2,
LDPT_GET_API_VERSION,
+ LDPT_REGISTER_CLAIM_FILE_HOOK_V2
};
/* The plugin transfer vector. */
@@ -565,6 +580,7 @@ struct ld_plugin_tv
int tv_val;
const char *tv_string;
ld_plugin_register_claim_file tv_register_claim_file;
+ ld_plugin_register_claim_file_v2 tv_register_claim_file_v2;
ld_plugin_register_all_symbols_read tv_register_all_symbols_read;
ld_plugin_register_cleanup tv_register_cleanup;
ld_plugin_add_symbols tv_add_symbols;