diff libinterp/corefcn/pt-jit.cc @ 17172:36fd98b9ce48

Add support for llvm 3.3 * configure.ac: Add check for LLVM IR directory. * jit-ir.cc: Update includes. * jit-util.h: Define HAVE_LLVM_DATALAYOUT. * jit-typeinfo.cc: Update includes. * pt-jit.cc: Update includes. * acinclude.m4: Update checks for llvm 3.3
author Max Brister <max@2bass.com>
date Sat, 03 Aug 2013 16:53:46 -0600
parents 38bcfd413db0
children bc924baa2c4e
line wrap: on
line diff
--- a/libinterp/corefcn/pt-jit.cc
+++ b/libinterp/corefcn/pt-jit.cc
@@ -50,23 +50,37 @@
 #include <llvm/Analysis/Passes.h>
 #include <llvm/Analysis/Verifier.h>
 #include <llvm/Bitcode/ReaderWriter.h>
-#include <llvm/LLVMContext.h>
 #include <llvm/ExecutionEngine/ExecutionEngine.h>
 #include <llvm/ExecutionEngine/JIT.h>
+#include <llvm/PassManager.h>
+
+#ifdef HAVE_LLVM_IR_FUNCTION_H
+#include <llvm/IR/LLVMContext.h>
+#include <llvm/IR/Module.h>
+#else
+#include <llvm/LLVMContext.h>
 #include <llvm/Module.h>
-#include <llvm/PassManager.h>
-#ifdef IRBUILDER_HEADER_IN_SUPPORT_DIR
+#endif
+
+#ifdef HAVE_LLVM_SUPPORT_IRBUILDER_H
 #include <llvm/Support/IRBuilder.h>
+#elif defined(HAVE_LLVM_IR_IRBUILDER_H)
+#include <llvm/IR/IRBuilder.h>
 #else
 #include <llvm/IRBuilder.h>
 #endif
+
 #include <llvm/Support/raw_os_ostream.h>
 #include <llvm/Support/TargetSelect.h>
-#ifdef HAVE_DATALAYOUT
+
+#ifdef HAVE_LLVM_IR_DATALAYOUT_H
+#include <llvm/IR/DataLayout.h>
+#elif defined(HAVE_LLVM_DATALAYOUT_H)
 #include <llvm/DataLayout.h>
 #else
 #include <llvm/Target/TargetData.h>
 #endif
+
 #include <llvm/Transforms/IPO.h>
 #include <llvm/Transforms/Scalar.h>
 
@@ -1872,7 +1886,7 @@
   module_pass_manager->add (llvm::createAlwaysInlinerPass ());
 
   pass_manager = new llvm::FunctionPassManager (module);
-#if HAVE_DATALAYOUT
+#ifdef HAVE_LLVM_DATALAYOUT
   pass_manager->add (new llvm::DataLayout (*engine->getDataLayout ()));
 #else
   pass_manager->add (new llvm::TargetData (*engine->getTargetData ()));