1932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 2932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines//===- BitReader_2_7.h - Internal BitcodeReader 2.7 impl --------*- C++ -*-===// 3932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// 4932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// The LLVM Compiler Infrastructure 5932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// 6932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// This file is distributed under the University of Illinois Open Source 7932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// License. See LICENSE.TXT for details. 8932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// 9932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines//===----------------------------------------------------------------------===// 10932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// 11932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// This header defines the BitcodeReader class. 12932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines// 13932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines//===----------------------------------------------------------------------===// 14932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 15932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#ifndef BITREADER_2_7_H 16932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#define BITREADER_2_7_H 17932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 18932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/GVMaterializer.h" 19932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/Attributes.h" 20932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/Type.h" 21932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/OperandTraits.h" 22932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/Bitcode/BitstreamReader.h" 23932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/Bitcode/LLVMBitCodes.h" 24932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/Support/ValueHandle.h" 25932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include "llvm/ADT/DenseMap.h" 26932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#include <string> 27932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 28932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hinesnamespace llvm { 29932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines class MemoryBuffer; 30932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines class LLVMContext; 31932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines class Module; 32932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines} // End llvm namespace 33932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 34932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hinesnamespace llvm_2_7 { 35932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 36932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hinesllvm::Module *ParseBitcodeFile(llvm::MemoryBuffer *Buffer, 37932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines llvm::LLVMContext& Context, 38932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines std::string *ErrMsg); 39932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 40932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hinesstd::string getBitcodeTargetTriple(llvm::MemoryBuffer *Buffer, 41932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines llvm::LLVMContext& Context, 42932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines std::string *ErrMsg); 43932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 44932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hinesllvm::Module *getLazyBitcodeModule(llvm::MemoryBuffer *Buffer, 45932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines llvm::LLVMContext& Context, 46932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines std::string *ErrMsg); 47932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines} // End llvm_2_7 namespace 48932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines 49932bc6e35bcef7adff05d890a9dcc7212426fb6aStephen Hines#endif 50