1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-01 16:33:37 +01:00
llvm-mirror/utils/TableGen
Benjamin Kramer ed4150f84d Shrink the asm matcher tables.
- Shrink the opcode field to 16 bits.
- Shrink the AsmVariantID field to 8 bits.
- Store the mnemonic string in a string table, store a 16 bit index.
- Store a pascal-style length byte in the string instead of a null terminator,
  so we can avoid calling strlen on every entry we visit during mnemonic search.

Shrinks X86AsmParser.o from 434k to 201k on x86_64 and eliminates relocs from the table.

llvm-svn: 151984
2012-03-03 19:13:26 +00:00
..
AsmMatcherEmitter.cpp Shrink the asm matcher tables. 2012-03-03 19:13:26 +00:00
AsmMatcherEmitter.h
AsmWriterEmitter.cpp Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
AsmWriterEmitter.h
AsmWriterInst.cpp
AsmWriterInst.h
CallingConvEmitter.cpp
CallingConvEmitter.h
CMakeLists.txt Update tblgen command guide. Remove unused tblgen InstrEnumEmitter files. 2012-02-27 02:31:09 +00:00
CodeEmitterGen.cpp Widen the instruction encoder that TblGen emits to a 64 bits, which should accomodate every target I can think of offhand. 2012-01-24 18:37:29 +00:00
CodeEmitterGen.h
CodeGenDAGPatterns.cpp Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
CodeGenDAGPatterns.h Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
CodeGenInstruction.cpp
CodeGenInstruction.h
CodeGenIntrinsics.h
CodeGenRegisters.cpp Specify SubRegIndex components on the index itself. 2012-02-01 23:16:41 +00:00
CodeGenRegisters.h Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
CodeGenTarget.cpp Revert "Emit the SubRegTable with the smallest possible integer type." 2012-03-01 17:30:35 +00:00
CodeGenTarget.h Revert "Emit the SubRegTable with the smallest possible integer type." 2012-03-01 17:30:35 +00:00
DAGISelEmitter.cpp
DAGISelEmitter.h
DAGISelMatcher.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
DAGISelMatcher.h Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
DAGISelMatcherEmitter.cpp Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
DAGISelMatcherGen.cpp
DAGISelMatcherOpt.cpp
DFAPacketizerEmitter.cpp Increment DFAStateEntryTable index for sentinel entry. 2012-02-03 21:08:25 +00:00
DFAPacketizerEmitter.h
DisassemblerEmitter.cpp
DisassemblerEmitter.h
EDEmitter.cpp Add X86 assembler and disassembler support for AMD SVM instructions. Original patch by Kay Tiong Khoo. Few tweaks by me for code density and to reduce replication. 2012-02-18 08:19:49 +00:00
EDEmitter.h
FastISelEmitter.cpp Remove VectorExtras. This unused helper was written for a type of API that is discouraged now. 2012-01-07 19:42:13 +00:00
FastISelEmitter.h
FixedLenDecoderEmitter.cpp Tidy up. 80 columns. 2012-02-29 22:07:56 +00:00
FixedLenDecoderEmitter.h Tidy up. 80 columns. 2012-02-29 22:07:56 +00:00
InstrInfoEmitter.cpp Put instruction names into an indexed string table on the side, removing a pointer from MCInstrDesc. 2012-02-10 13:18:44 +00:00
InstrInfoEmitter.h
IntrinsicEmitter.cpp Emit the "is an intrinsic overloaded" table as a bitfield. 2012-03-01 02:16:57 +00:00
IntrinsicEmitter.h
LLVMBuild.txt
Makefile
PseudoLoweringEmitter.cpp Convert assert(0) to llvm_unreachable 2012-02-05 07:21:30 +00:00
PseudoLoweringEmitter.h
RegisterInfoEmitter.cpp Move getSubRegIndex out of generated code into MCRegisterInfo, devirtualize it. 2012-03-01 18:16:35 +00:00
RegisterInfoEmitter.h
SetTheory.cpp Add an (interleave A, B, ...) SetTheory operator. 2012-01-24 18:06:05 +00:00
SetTheory.h Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
StringMatcher.cpp
StringMatcher.h
StringToOffsetTable.h StringToOffsetTable: Allow uniquing the first element, add an option to skip appending a terminating null. 2012-03-03 19:13:20 +00:00
SubtargetEmitter.cpp Don't use enums larger than 1 << 31 for target features. 2012-01-03 23:04:28 +00:00
SubtargetEmitter.h
TableGen.cpp Removing unused default switch cases in switches over enums that already account for all enumeration values explicitly. 2012-01-16 23:24:27 +00:00
TGValueTypes.cpp Revert pragma clang suppressions that confuse GCC. (I'll worry about how to suppress/fix these problems properly when we figure out how to keep LLVM -Wweak-vtables clean) 2011-12-20 08:22:49 +00:00
X86DisassemblerShared.h
X86DisassemblerTables.cpp X86 disassembler support for jcxz, jecxz, and jrcxz. Fixes PR11643. Patch by Kay Tiong Khoo. 2012-02-27 01:54:29 +00:00
X86DisassemblerTables.h
X86ModRMFilters.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
X86ModRMFilters.h Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
X86RecognizableInstr.cpp X86 disassembler support for jcxz, jecxz, and jrcxz. Fixes PR11643. Patch by Kay Tiong Khoo. 2012-02-27 01:54:29 +00:00
X86RecognizableInstr.h X86 disassembler support for jcxz, jecxz, and jrcxz. Fixes PR11643. Patch by Kay Tiong Khoo. 2012-02-27 01:54:29 +00:00