diff options
author | Richard Trembecký <richardt@centrum.sk> | 2016-05-01 16:38:21 +0200 |
---|---|---|
committer | Dan Liew <delcypher@gmail.com> | 2017-05-24 14:24:47 +0100 |
commit | d3a467d8999e6e52892b13c2bc93ac829ee1b7c9 (patch) | |
tree | 99493da4b33f50eb0c27a237213c615520efbd95 /lib/Module/RaiseAsm.cpp | |
parent | 92367dec2ee00cb708454e4c33ff34d80eddb878 (diff) | |
download | klee-d3a467d8999e6e52892b13c2bc93ac829ee1b7c9.tar.gz |
llvm: make KLEE compile against LLVM 3.5 and 3.6
Based on work by @ccadeptic23 and @delcypher. Formatting fixed by @snf. Fix compiler warning by @martijnthe. Further fixes by @mchalupa. Refactored, so that changes can be reviewed -- no massive changes in whitespace and in the surrounding code. Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Diffstat (limited to 'lib/Module/RaiseAsm.cpp')
-rw-r--r-- | lib/Module/RaiseAsm.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/Module/RaiseAsm.cpp b/lib/Module/RaiseAsm.cpp index af92b74b..5fc54ef1 100644 --- a/lib/Module/RaiseAsm.cpp +++ b/lib/Module/RaiseAsm.cpp @@ -24,6 +24,10 @@ #include "llvm/Support/raw_ostream.h" #include "llvm/Support/Host.h" #include "llvm/Target/TargetLowering.h" +#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 6) +#include "llvm/Target/TargetMachine.h" +#include "llvm/Target/TargetSubtargetInfo.h" +#endif #if LLVM_VERSION_CODE < LLVM_VERSION(3, 0) #include "llvm/Target/TargetRegistry.h" #else @@ -99,15 +103,20 @@ bool RaiseAsmPass::runOnModule(Module &M) { klee_warning("Warning: unable to select native target: %s", Err.c_str()); TLI = 0; } else { -#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 1) +#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 6) + TM = NativeTarget->createTargetMachine(HostTriple, "", "", TargetOptions()); + TLI = TM->getSubtargetImpl()->getTargetLowering(); +#elif LLVM_VERSION_CODE >= LLVM_VERSION(3, 1) TM = NativeTarget->createTargetMachine(HostTriple, "", "", TargetOptions()); + TLI = TM->getTargetLowering(); #elif LLVM_VERSION_CODE >= LLVM_VERSION(3, 0) TM = NativeTarget->createTargetMachine(HostTriple, "", ""); + TLI = TM->getTargetLowering(); #else TM = NativeTarget->createTargetMachine(HostTriple, ""); -#endif TLI = TM->getTargetLowering(); +#endif triple = llvm::Triple(HostTriple); } |