blob: d7733c7176b06f955c70d9f4559b634d97fb5958 [file] [log] [blame]
Reid Spencerdac69c82004-06-07 17:53:43 +00001//===-- ReaderInternals.h - Definitions internal to the reader --*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file was developed by the LLVM research group and is distributed under
6// the University of Illinois Open Source License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This header file defines various stuff that is used by the bytecode reader.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef ANALYZER_INTERNALS_H
15#define ANALYZER_INTERNALS_H
16
17#include "Parser.h"
18#include "llvm/Bytecode/Analyzer.h"
Reid Spenceraee4f5b2004-06-08 05:52:29 +000019#include "llvm/Constants.h"
20#include "llvm/DerivedTypes.h"
Reid Spencerdac69c82004-06-07 17:53:43 +000021
Reid Spencerdac69c82004-06-07 17:53:43 +000022
23namespace llvm {
24
Reid Spencerdac69c82004-06-07 17:53:43 +000025class BytecodeAnalyzer {
26 BytecodeAnalyzer(const BytecodeAnalyzer &); // DO NOT IMPLEMENT
27 void operator=(const BytecodeAnalyzer &); // DO NOT IMPLEMENT
28public:
29 BytecodeAnalyzer() { }
30 ~BytecodeAnalyzer() { }
31
32 void AnalyzeBytecode(
33 const unsigned char *Buf,
34 unsigned Length,
35 BytecodeAnalysis& bca,
36 const std::string &ModuleID
37 );
38
39 void DumpBytecode(
40 const unsigned char *Buf,
41 unsigned Length,
42 BytecodeAnalysis& bca,
43 const std::string &ModuleID
44 );
Reid Spencerdac69c82004-06-07 17:53:43 +000045};
46
47} // End llvm namespace
48
49#endif
50
51// vim: sw=2