diff options
author | Stephen Hines <srhines@google.com> | 2014-04-23 16:57:46 -0700 |
---|---|---|
committer | Stephen Hines <srhines@google.com> | 2014-04-24 15:53:16 -0700 |
commit | 36b56886974eae4f9c5ebc96befd3e7bfe5de338 (patch) | |
tree | e6cfb69fbbd937f450eeb83bfb83b9da3b01275a /tools/llvm-link | |
parent | 69a8640022b04415ae9fac62f8ab090601d8f889 (diff) | |
download | external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.zip external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.gz external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.bz2 |
Update to LLVM 3.5a.
Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
Diffstat (limited to 'tools/llvm-link')
-rw-r--r-- | tools/llvm-link/Android.mk | 4 | ||||
-rw-r--r-- | tools/llvm-link/CMakeLists.txt | 8 | ||||
-rw-r--r-- | tools/llvm-link/llvm-link.cpp | 18 |
3 files changed, 21 insertions, 9 deletions
diff --git a/tools/llvm-link/Android.mk b/tools/llvm-link/Android.mk index db8f2af..cbcd0af 100644 --- a/tools/llvm-link/Android.mk +++ b/tools/llvm-link/Android.mk @@ -34,6 +34,7 @@ include $(BUILD_HOST_EXECUTABLE) # llvm-link command line tool (target) #===---------------------------------------------------------------=== +ifneq (true,$(DISABLE_LLVM_DEVICE_BUILDS)) include $(CLEAR_VARS) LOCAL_MODULE := llvm-link @@ -42,7 +43,8 @@ LOCAL_SRC_FILES := $(llvm_link_SRC_FILES) LOCAL_STATIC_LIBRARIES := $(llvm_link_STATIC_LIBRARIES) LOCAL_SHARED_LIBRARIES := \ libcutils \ - libstlport + libc++ include $(LLVM_DEVICE_BUILD_MK) include $(BUILD_EXECUTABLE) +endif diff --git a/tools/llvm-link/CMakeLists.txt b/tools/llvm-link/CMakeLists.txt index 4df5356..d4f5be7 100644 --- a/tools/llvm-link/CMakeLists.txt +++ b/tools/llvm-link/CMakeLists.txt @@ -1,4 +1,10 @@ -set(LLVM_LINK_COMPONENTS linker bitreader bitwriter asmparser irreader) +set(LLVM_LINK_COMPONENTS + BitWriter + Core + IRReader + Linker + Support + ) add_llvm_tool(llvm-link llvm-link.cpp diff --git a/tools/llvm-link/llvm-link.cpp b/tools/llvm-link/llvm-link.cpp index 99cca23..1f0e224 100644 --- a/tools/llvm-link/llvm-link.cpp +++ b/tools/llvm-link/llvm-link.cpp @@ -12,11 +12,11 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Linker.h" -#include "llvm/Analysis/Verifier.h" +#include "llvm/Linker/Linker.h" #include "llvm/Bitcode/ReaderWriter.h" #include "llvm/IR/LLVMContext.h" #include "llvm/IR/Module.h" +#include "llvm/IR/Verifier.h" #include "llvm/IRReader/IRReader.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/ManagedStatic.h" @@ -50,6 +50,10 @@ Verbose("v", cl::desc("Print information about actions taken")); static cl::opt<bool> DumpAsm("d", cl::desc("Print assembly as linked"), cl::Hidden); +static cl::opt<bool> +SuppressWarnings("suppress-warnings", cl::desc("Suppress all linking warnings"), + cl::init(false)); + // LoadFile - Read the specified bitcode file in and return it. This routine // searches the link path for the specified file to try to find it... // @@ -78,17 +82,17 @@ int main(int argc, char **argv) { unsigned BaseArg = 0; std::string ErrorMessage; - OwningPtr<Module> Composite(LoadFile(argv[0], - InputFilenames[BaseArg], Context)); + std::unique_ptr<Module> Composite( + LoadFile(argv[0], InputFilenames[BaseArg], Context)); if (Composite.get() == 0) { errs() << argv[0] << ": error loading file '" << InputFilenames[BaseArg] << "'\n"; return 1; } - Linker L(Composite.get()); + Linker L(Composite.get(), SuppressWarnings); for (unsigned i = BaseArg+1; i < InputFilenames.size(); ++i) { - OwningPtr<Module> M(LoadFile(argv[0], InputFilenames[i], Context)); + std::unique_ptr<Module> M(LoadFile(argv[0], InputFilenames[i], Context)); if (M.get() == 0) { errs() << argv[0] << ": error loading file '" <<InputFilenames[i]<< "'\n"; return 1; @@ -106,7 +110,7 @@ int main(int argc, char **argv) { if (DumpAsm) errs() << "Here's the assembly:\n" << *Composite; std::string ErrorInfo; - tool_output_file Out(OutputFilename.c_str(), ErrorInfo, sys::fs::F_Binary); + tool_output_file Out(OutputFilename.c_str(), ErrorInfo, sys::fs::F_None); if (!ErrorInfo.empty()) { errs() << ErrorInfo << '\n'; return 1; |