~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/include/llvm/MC/MCDisassembler.h

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2010-03-12 11:30:04 UTC
  • mfrom: (0.41.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100312113004-b0fop4bkycszdd0z
Tags: 0.96~rc1+dfsg-0ubuntu1
* New upstream RC - FFE (LP: #537636):
  - Add OfficialDatabaseOnly option to clamav-base.postinst.in
  - Add LocalSocketGroup option to clamav-base.postinst.in
  - Add LocalSocketMode option to clamav-base.postinst.in
  - Add CrossFilesystems option to clamav-base.postinst.in
  - Add ClamukoScannerCount option to clamav-base.postinst.in
  - Add BytecodeSecurity opiton to clamav-base.postinst.in
  - Add DetectionStatsHostID option to clamav-freshclam.postinst.in
  - Add Bytecode option to clamav-freshclam.postinst.in
  - Add MilterSocketGroup option to clamav-milter.postinst.in
  - Add MilterSocketMode option to clamav-milter.postinst.in
  - Add ReportHostname option to clamav-milter.postinst.in
  - Bump libclamav SO version to 6.1.0 in libclamav6.install
  - Drop clamdmon from clamav.examples (no longer shipped by upstream)
  - Drop libclamav.a from libclamav-dev.install (not built by upstream)
  - Update SO version for lintian override for libclamav6
  - Add new Bytecode Testing Tool, usr/bin/clambc, to clamav.install
  - Add build-depends on python and python-setuptools for new test suite
  - Update debian/copyright for the embedded copy of llvm (using the system
    llvm is not currently feasible)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//===-- llvm/MC/MCDisassembler.h - Disassembler interface -------*- 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
#ifndef MCDISASSEMBLER_H
 
10
#define MCDISASSEMBLER_H
 
11
 
 
12
#include "llvm/System/DataTypes.h"
 
13
 
 
14
namespace llvm {
 
15
  
 
16
class MCInst;
 
17
class MemoryObject;
 
18
class raw_ostream;
 
19
 
 
20
/// MCDisassembler - Superclass for all disassemblers.  Consumes a memory region
 
21
///   and provides an array of assembly instructions.
 
22
class MCDisassembler {
 
23
public:
 
24
  /// Constructor     - Performs initial setup for the disassembler.
 
25
  MCDisassembler() {}
 
26
  
 
27
  virtual ~MCDisassembler();
 
28
  
 
29
  /// getInstruction  - Returns the disassembly of a single instruction.
 
30
  ///
 
31
  /// @param instr    - An MCInst to populate with the contents of the 
 
32
  ///                   instruction.
 
33
  /// @param size     - A value to populate with the size of the instruction, or
 
34
  ///                   the number of bytes consumed while attempting to decode
 
35
  ///                   an invalid instruction.
 
36
  /// @param region   - The memory object to use as a source for machine code.
 
37
  /// @param address  - The address, in the memory space of region, of the first
 
38
  ///                   byte of the instruction.
 
39
  /// @param vStream  - The stream to print warnings and diagnostic messages on.
 
40
  /// @return         - True if the instruction is valid; false otherwise.
 
41
  virtual bool          getInstruction(MCInst& instr,
 
42
                                       uint64_t& size,
 
43
                                       const MemoryObject &region,
 
44
                                       uint64_t address,
 
45
                                       raw_ostream &vStream) const = 0;
 
46
};  
 
47
 
 
48
} // namespace llvm
 
49
 
 
50
#endif