summaryrefslogtreecommitdiff
path: root/tools/gold
diff options
context:
space:
mode:
authorIvan Krasin <krasin@chromium.org>2011-09-09 00:14:04 +0000
committerIvan Krasin <krasin@chromium.org>2011-09-09 00:14:04 +0000
commitc170f5f31cd697818bf470b57b72c11a1da78010 (patch)
treec3c6d7a2bfb22353c2af9d4c57b1f9d9a40877ab /tools/gold
parent404507e7d8cfd77ab5a7bdd0273c95f741b9d5c4 (diff)
gold plugin: report errors occured in lto_module_create_from_*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139340 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/gold')
-rw-r--r--tools/gold/gold-plugin.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/tools/gold/gold-plugin.cpp b/tools/gold/gold-plugin.cpp
index 8cb4fb4bca4..a42ce4f3e8d 100644
--- a/tools/gold/gold-plugin.cpp
+++ b/tools/gold/gold-plugin.cpp
@@ -251,8 +251,13 @@ static ld_plugin_status claim_file_hook(const ld_plugin_input_file *file,
} else {
M = lto_module_create_from_fd(file->fd, file->name, file->filesize);
}
- if (!M)
+ if (!M) {
+ if (const char* msg = lto_get_error_message()) {
+ (*message)(LDPL_ERROR, "Failed to create LTO module: %s", msg);
+ return LDPS_ERR;
+ }
return LDPS_OK;
+ }
*claimed = 1;
Modules.resize(Modules.size() + 1);