mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-13 22:58:50 +00:00
86fa0255b2
The way the named arguments for various system instructions are handled at the moment has a few problems: - Large-scale duplication between AArch64BaseInfo.h and AArch64BaseInfo.cpp - That weird Mapping class that I have no idea what I was on when I thought it was a good idea. - Searches are performed linearly through the entire list. - We print absolutely all registers in upper-case, even though some are canonically mixed case (SPSel for example). - The ARM ARM specifies sysregs in terms of 5 fields, but those are relegated to comments in our implementation, with a slightly opaque hex value indicating the canonical encoding LLVM will use. This adds a new TableGen backend to produce efficiently searchable tables, and switches AArch64 over to using that infrastructure. llvm-svn: 274576
38 lines
844 B
CMake
38 lines
844 B
CMake
set(LLVM_LINK_COMPONENTS Support)
|
|
|
|
add_tablegen(llvm-tblgen LLVM
|
|
AsmMatcherEmitter.cpp
|
|
AsmWriterEmitter.cpp
|
|
AsmWriterInst.cpp
|
|
Attributes.cpp
|
|
CallingConvEmitter.cpp
|
|
CodeEmitterGen.cpp
|
|
CodeGenDAGPatterns.cpp
|
|
CodeGenInstruction.cpp
|
|
CodeGenMapTable.cpp
|
|
CodeGenRegisters.cpp
|
|
CodeGenSchedule.cpp
|
|
CodeGenTarget.cpp
|
|
DAGISelEmitter.cpp
|
|
DAGISelMatcherEmitter.cpp
|
|
DAGISelMatcherGen.cpp
|
|
DAGISelMatcherOpt.cpp
|
|
DAGISelMatcher.cpp
|
|
DFAPacketizerEmitter.cpp
|
|
DisassemblerEmitter.cpp
|
|
FastISelEmitter.cpp
|
|
FixedLenDecoderEmitter.cpp
|
|
InstrInfoEmitter.cpp
|
|
IntrinsicEmitter.cpp
|
|
OptParserEmitter.cpp
|
|
PseudoLoweringEmitter.cpp
|
|
RegisterInfoEmitter.cpp
|
|
SearchableTableEmitter.cpp
|
|
SubtargetEmitter.cpp
|
|
TableGen.cpp
|
|
X86DisassemblerTables.cpp
|
|
X86ModRMFilters.cpp
|
|
X86RecognizableInstr.cpp
|
|
CTagsEmitter.cpp
|
|
)
|