text: // Copyright 2015 ISP RAS. All rights reserved.
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
  
  #ifndef V8_LLVM_HEADERS_H_
  #define V8_LLVM_HEADERS_H_
  
  #if DEBUG
  #define LLV8_HAD_DEBUG
  #undef DEBUG
  #endif
  
  // FIXME(llvm): remove unneeded headers
  // FIXME(llvm): sort headers (style)
  #include <iostream>
  
  #include "llvm/IR/IRBuilder.h"
  #include "llvm/Analysis/Passes.h"
  #include "llvm/Analysis/TargetTransformInfo.h"
  #include "llvm/ADT/DenseMap.h"
  #include "llvm/ADT/DenseSet.h"
  #include "llvm/ADT/STLExtras.h"
  #include "llvm/ADT/SetOperations.h"
  #include "llvm/CodeGen/GCStrategy.h"
  #include "llvm/IR/LLVMContext.h"
  #include "llvm/IR/Module.h"
  #include "llvm/ExecutionEngine/GenericValue.h"
  #include "llvm/ExecutionEngine/ExecutionEngine.h"
  #include "llvm/IR/Constants.h"
  #include "llvm/CodeGen/LinkAllCodegenComponents.h"
  #include "llvm/IR/DerivedTypes.h"
  #include "llvm/IR/Dominators.h"
  #include "llvm/IR/InstrTypes.h"
  #include "llvm/IR/Instructions.h"
  #include "llvm/IR/InstIterator.h"
  #include "llvm/IR/LLVMContext.h"
  #include "llvm/IR/MDBuilder.h"
  #include "llvm/IR/PassManager.h"
  #include "llvm/IR/Statepoint.h"
  #include "llvm/IR/CallingConv.h"
  #include "llvm/IR/Verifier.h"
  #include "llvm/IR/ValueSymbolTable.h"
  #include "llvm/MC/MCAsmInfo.h"
  #include "llvm/MC/MCContext.h"
  #include "llvm/MC/MCDisassembler.h"
  #include "llvm/MC/MCInst.h"
  #include "llvm/MC/MCInstrAnalysis.h"
  #include "llvm/MC/MCInstrInfo.h"
  #include "llvm/MC/MCInstPrinter.h"
  #include "llvm/MC/MCObjectFileInfo.h"
  #include "llvm/MC/MCRegisterInfo.h"
  #include "llvm/MC/MCSubtargetInfo.h"
  #include "llvm/Support/ManagedStatic.h"
  #include "llvm/Support/TargetRegistry.h"
  #include "llvm/Support/TargetSelect.h"
  #include "llvm/Support/raw_ostream.h"
  #include "llvm/Support/Casting.h"
  #include "llvm/Support/CodeGen.h"
  #include "llvm/Transforms/Utils/BasicBlockUtils.h"
  #include "llvm/Transforms/Utils/Local.h"
  #include "llvm/Transforms/Utils/PromoteMemToReg.h"
  #include "llvm/ExecutionEngine/MCJIT.h"
  #include "llvm/ExecutionEngine/RTDyldMemoryManager.h"
  
  #include "llvm/Analysis/Passes.h"
  #include "llvm/Analysis/TargetTransformInfo.h"
  #include "llvm/Transforms/IPO.h"
  #include "llvm/Transforms/IPO/PassManagerBuilder.h"
  #include "llvm/Transforms/Scalar.h"
  
  #include "llvm/IR/Function.h"
  
  #include "llvm/IR/LegacyPassManager.h"
  #include "llvm/PassSupport.h"
  
  #undef DEBUG // Undef the llvm DEBUG
  
  #ifdef LLV8_HAD_DEBUG
  #define DEBUG 1
  #endif
  
  namespace v8 {
  namespace internal {
  
  using llvm::LLVMContext;
  //using llvm::Module;
  
  }  // namespace internal
  }  // namespace v8
  
  #endif  // V8_LLVM_HEADERS_H_
  