llvm-6502/utils/TableGen
Sean Callanan 8ed9f51663 Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit
incarnations), integrated into the MC framework.  

The disassembler is table-driven, using a custom TableGen backend to 
generate hierarchical tables optimized for fast decode.  The disassembler 
consumes MemoryObjects and produces arrays of MCInsts, adhering to the 
abstract base class MCDisassembler (llvm/MC/MCDisassembler.h).

The disassembler is documented in detail in

- lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime)
- utils/TableGen/DisassemblerEmitter.cpp (table emitter)

You can test the disassembler by running llvm-mc -disassemble for i386
or x86_64 targets.  Please let me know if you encounter any problems
with it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91749 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-19 02:59:52 +00:00
..
AsmMatcherEmitter.cpp
AsmMatcherEmitter.h
AsmWriterEmitter.cpp Don't print a redundant tab for inline asm, and do use the new printKill. 2009-11-06 00:19:43 +00:00
AsmWriterEmitter.h
CallingConvEmitter.cpp
CallingConvEmitter.h
ClangDiagnosticsEmitter.cpp
ClangDiagnosticsEmitter.h
CMakeLists.txt Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
CodeEmitterGen.cpp Revert 90628, which was incorrect. 2009-12-15 20:21:44 +00:00
CodeEmitterGen.h Revert 90628, which was incorrect. 2009-12-15 20:21:44 +00:00
CodeGenDAGPatterns.cpp Do not infer the target type for COPY_TO_REGCLASS from dest regclass, this won't work if it can contain several types. Require explicit result type for the node for now. This fixes PR5364. 2009-11-02 00:11:39 +00:00
CodeGenDAGPatterns.h Remove unneeded ';' and a class/struct mismatch (noticed by clang). 2009-12-09 02:58:09 +00:00
CodeGenInstruction.cpp Add @earlyclobber TableGen constraint 2009-12-16 19:43:02 +00:00
CodeGenInstruction.h
CodeGenIntrinsics.h
CodeGenRegisters.h
CodeGenTarget.cpp
CodeGenTarget.h clang++ points out that this is pointless. 2009-11-06 06:33:01 +00:00
DAGISelEmitter.cpp Fix a comment. 2009-12-19 01:46:09 +00:00
DAGISelEmitter.h
DisassemblerEmitter.cpp Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
DisassemblerEmitter.h Sketch TableGen disassembler emitter, based on patch by Sean Callanan. 2009-11-25 02:13:23 +00:00
FastISelEmitter.cpp
FastISelEmitter.h
InstrEnumEmitter.cpp
InstrEnumEmitter.h
InstrInfoEmitter.cpp
InstrInfoEmitter.h
IntrinsicEmitter.cpp
IntrinsicEmitter.h
LLVMCConfigurationEmitter.cpp Make 'set_option' work with list options. 2009-12-18 11:27:26 +00:00
LLVMCConfigurationEmitter.h
Makefile
OptParserEmitter.cpp OptParser: Emit HelpText field for option groups. 2009-12-04 21:41:24 +00:00
OptParserEmitter.h TableGen: Add initial backend for clang Driver's option parsing. 2009-11-18 21:29:51 +00:00
Record.cpp Delete some dead and non-obvious code. 2009-11-24 01:48:15 +00:00
Record.h Delete some dead and non-obvious code. 2009-11-24 01:48:15 +00:00
RegisterInfoEmitter.cpp Remove unneeded ';' and a class/struct mismatch (noticed by clang). 2009-12-09 02:58:09 +00:00
RegisterInfoEmitter.h
StringToOffsetTable.h
SubtargetEmitter.cpp Show command-line args and features passed into backend in debug output. Approved by Evan Cheng. 2009-11-11 03:23:46 +00:00
SubtargetEmitter.h
TableGen.cpp Sketch TableGen disassembler emitter, based on patch by Sean Callanan. 2009-11-25 02:13:23 +00:00
TableGenBackend.cpp
TableGenBackend.h
TGLexer.cpp
TGLexer.h
TGParser.cpp Fix whitespace. 2009-11-22 04:24:42 +00:00
TGParser.h
TGValueTypes.cpp
X86DisassemblerShared.h Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
X86DisassemblerTables.cpp Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
X86DisassemblerTables.h Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
X86ModRMFilters.h Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
X86RecognizableInstr.cpp Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00
X86RecognizableInstr.h Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit 2009-12-19 02:59:52 +00:00