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