about summary refs log tree commit diff homepage
path: root/include
diff options
context:
space:
mode:
authorJiri Slaby <jirislaby@gmail.com>2017-06-15 15:03:29 +0200
committerDan Liew <delcypher@gmail.com>2017-06-16 15:40:50 +0100
commitc5059debfd910edabcbc2fc847d21c9e50c5afe1 (patch)
tree564ee5596349879a0dda633e97e4f1bd43982273 /include
parent4359b5fd1ce7069b7cdf20f31fee8817705c07b3 (diff)
downloadklee-c5059debfd910edabcbc2fc847d21c9e50c5afe1.tar.gz
llvm37: introduce type for PassManager
In LLVM 3.7, PassManager was moved to the legacy:: namespace. Introduce
a type for it and use it in the code.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/klee/Internal/Module/LLVMPassManager.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/klee/Internal/Module/LLVMPassManager.h b/include/klee/Internal/Module/LLVMPassManager.h
new file mode 100644
index 00000000..5a1b8927
--- /dev/null
+++ b/include/klee/Internal/Module/LLVMPassManager.h
@@ -0,0 +1,22 @@
+//===-- InstructionInfoTable.h ----------------------------------*- C++ -*-===//
+//
+//                     The KLEE Symbolic Virtual Machine
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 7)
+#include "llvm/IR/LegacyPassManager.h"
+#else
+#include "llvm/PassManager.h"
+#endif
+
+namespace klee {
+#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 7)
+typedef llvm::legacy::PassManager LegacyLLVMPassManagerTy;
+#else
+typedef llvm::PassManager LegacyLLVMPassManagerTy;
+#endif
+}