139f7f9bf5
upcoming 3.3 release (branching and freezing expected in a few weeks). Preliminary release notes can be found at the usual location: <http://llvm.org/docs/ReleaseNotes.html> An MFC is planned once the actual 3.3 release is finished.
40 lines
1.2 KiB
C++
40 lines
1.2 KiB
C++
//===- X86DisassemblerShared.h - Emitter shared header ----------*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef X86DISASSEMBLERSHARED_H
|
|
#define X86DISASSEMBLERSHARED_H
|
|
|
|
#include <string.h>
|
|
#include <string>
|
|
|
|
#define INSTRUCTION_SPECIFIER_FIELDS \
|
|
struct OperandSpecifier operands[X86_MAX_OPERANDS]; \
|
|
bool filtered; \
|
|
InstructionContext insnContext; \
|
|
std::string name; \
|
|
\
|
|
InstructionSpecifier() { \
|
|
filtered = false; \
|
|
insnContext = IC; \
|
|
name = ""; \
|
|
modifierType = MODIFIER_NONE; \
|
|
modifierBase = 0; \
|
|
memset(operands, 0, sizeof(operands)); \
|
|
}
|
|
|
|
#define INSTRUCTION_IDS \
|
|
InstrUID instructionIDs[256];
|
|
|
|
#include "../../lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h"
|
|
|
|
#undef INSTRUCTION_SPECIFIER_FIELDS
|
|
#undef INSTRUCTION_IDS
|
|
|
|
#endif
|