1 //===- BitReader_3_0.h - Internal BitcodeReader 3.0 impl --------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 // 10 // This header defines the BitcodeReader class. 11 // 12 //===----------------------------------------------------------------------===// 13 14 #ifndef BITREADER_3_0_H 15 #define BITREADER_3_0_H 16 17 #include "llvm/GVMaterializer.h" 18 #include "llvm/Attributes.h" 19 #include "llvm/Type.h" 20 #include "llvm/OperandTraits.h" 21 #include "llvm/Bitcode/BitstreamReader.h" 22 #include "llvm/Bitcode/LLVMBitCodes.h" 23 #include "llvm/Support/ValueHandle.h" 24 #include "llvm/ADT/DenseMap.h" 25 #include <string> 26 27 namespace llvm { 28 class MemoryBuffer; 29 class LLVMContext; 30 class Module; 31 } // End llvm namespace 32 33 namespace llvm_3_0 { 34 35 llvm::Module *ParseBitcodeFile(llvm::MemoryBuffer *Buffer, 36 llvm::LLVMContext& Context, 37 std::string *ErrMsg); 38 39 std::string getBitcodeTargetTriple(llvm::MemoryBuffer *Buffer, 40 llvm::LLVMContext& Context, 41 std::string *ErrMsg); 42 43 llvm::Module *getLazyBitcodeModule(llvm::MemoryBuffer *Buffer, 44 llvm::LLVMContext& Context, 45 std::string *ErrMsg); 46 } // End llvm_3_0 namespace 47 48 #endif 49