aboutsummaryrefslogtreecommitdiff
path: root/libclc/utils
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2014-12-31 15:27:53 +0000
committerTom Stellard <thomas.stellard@amd.com>2014-12-31 15:27:53 +0000
commit1d77071e0dfb692cd9fc9615ce5f9c3e46feb006 (patch)
treeca735f99ab705bb3ca7ce8bb5aecbec284c1ec50 /libclc/utils
parent67978556a5eb7e69ba54113c8b3be38e30ebc2a9 (diff)
downloadllvm-1d77071e0dfb692cd9fc9615ce5f9c3e46feb006.zip
llvm-1d77071e0dfb692cd9fc9615ce5f9c3e46feb006.tar.gz
llvm-1d77071e0dfb692cd9fc9615ce5f9c3e46feb006.tar.bz2
Require LLVM 3.6 and bump version to 0.1.0
Some functions are implemented using hand-written LLVM IR, and LLVM assembly format is allowed to change between versions, so we should require a specific version of LLVM. llvm-svn: 225041
Diffstat (limited to 'libclc/utils')
-rw-r--r--libclc/utils/prepare-builtins.cpp51
1 files changed, 2 insertions, 49 deletions
diff --git a/libclc/utils/prepare-builtins.cpp b/libclc/utils/prepare-builtins.cpp
index ee51edf..a3c3383 100644
--- a/libclc/utils/prepare-builtins.cpp
+++ b/libclc/utils/prepare-builtins.cpp
@@ -12,25 +12,8 @@
#include "llvm/Support/ToolOutputFile.h"
#include "llvm/Config/llvm-config.h"
-#define LLVM_360_AND_NEWER \
- (LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 6))
-
-#define LLVM_350_AND_NEWER \
- (LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 5))
-
-#if LLVM_350_AND_NEWER
#include <system_error>
-#define ERROR_CODE std::error_code
-#define UNIQUE_PTR std::unique_ptr
-#else
-#include "llvm/ADT/OwningPtr.h"
-#include "llvm/Support/system_error.h"
-
-#define ERROR_CODE error_code
-#define UNIQUE_PTR OwningPtr
-#endif
-
using namespace llvm;
static cl::opt<std::string>
@@ -50,30 +33,17 @@ int main(int argc, char **argv) {
std::auto_ptr<Module> M;
{
-#if LLVM_350_AND_NEWER
ErrorOr<std::unique_ptr<MemoryBuffer>> BufferOrErr =
MemoryBuffer::getFile(InputFilename);
std::unique_ptr<MemoryBuffer> &BufferPtr = BufferOrErr.get();
if (std::error_code ec = BufferOrErr.getError())
-#else
- UNIQUE_PTR<MemoryBuffer> BufferPtr;
- if (ERROR_CODE ec = MemoryBuffer::getFileOrSTDIN(InputFilename, BufferPtr))
-#endif
ErrorMessage = ec.message();
else {
-#if LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR > 4)
-# if LLVM_360_AND_NEWER
ErrorOr<Module *> ModuleOrErr =
parseBitcodeFile(BufferPtr.get()->getMemBufferRef(), Context);
-# else
- ErrorOr<Module *> ModuleOrErr = parseBitcodeFile(BufferPtr.get(), Context);
-# endif
- if (ERROR_CODE ec = ModuleOrErr.getError())
+ if (std::error_code ec = ModuleOrErr.getError())
ErrorMessage = ec.message();
M.reset(ModuleOrErr.get());
-#else
- M.reset(ParseBitcodeFile(BufferPtr.get(), Context, &ErrorMessage));
-#endif
}
}
@@ -103,30 +73,13 @@ int main(int argc, char **argv) {
return 1;
}
-#if LLVM_360_AND_NEWER
std::error_code EC;
- UNIQUE_PTR<tool_output_file> Out
+ std::unique_ptr<tool_output_file> Out
(new tool_output_file(OutputFilename, EC, sys::fs::F_None));
if (EC) {
errs() << EC.message() << '\n';
exit(1);
}
-#else
- std::string ErrorInfo;
- UNIQUE_PTR<tool_output_file> Out
- (new tool_output_file(OutputFilename.c_str(), ErrorInfo,
-#if (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR == 4)
- sys::fs::F_Binary));
-#elif LLVM_VERSION_MAJOR > 3 || (LLVM_VERSION_MAJOR == 3 && LLVM_VERSION_MINOR >= 5)
- sys::fs::F_None));
-#else
- raw_fd_ostream::F_Binary));
-#endif
- if (!ErrorInfo.empty()) {
- errs() << ErrorInfo << '\n';
- exit(1);
- }
-#endif // LLVM_360_AND_NEWER
WriteBitcodeToFile(M.get(), Out->os());