llvm/utils/TableGen
Jim Grosbach 7ce057983e ARM refactoring assembly parsing of memory address operands.
Memory operand parsing is a bit haphazzard at the moment, in no small part
due to the even more haphazzard representations of memory operands in the .td
files. Start cleaning that all up, at least a bit.

The addressing modes in the .td files will be being simplified to not be
so monolithic, especially with regards to immediate vs. register offsets
and post-indexed addressing. addrmode3 is on its way with this patch, for
example.

This patch is foundational to enable going back to smaller incremental patches
for the individual memory referencing instructions themselves. It does just
enough to get the basics in place and handle the "make check" regression tests
we already have.

Follow-up work will be fleshing out the details and adding more robust test
cases for the individual instructions, starting with ARM mode and moving from
there into Thumb and Thumb2.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136845 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-03 23:50:40 +00:00
..
ARMDecoderEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
ARMDecoderEmitter.h
AsmMatcherEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
AsmMatcherEmitter.h Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
AsmWriterEmitter.cpp Remove the AsmWriterEmitter (unused) feature that rely on TargetSubtargetInfo. 2011-07-06 02:02:33 +00:00
AsmWriterEmitter.h * Add classes that support the "feature" information. 2011-03-21 08:31:53 +00:00
AsmWriterInst.cpp
AsmWriterInst.h
CallingConvEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CallingConvEmitter.h Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
ClangASTNodesEmitter.cpp TableGen: Keep the order of DECL_CONTEXT() for DeclNodes.td. RecordVector may be used instead of RecordSet. 2011-04-11 23:20:28 +00:00
ClangASTNodesEmitter.h eliminate the Records global variable, patch by Garrison Venn! 2010-12-13 00:23:57 +00:00
ClangAttrEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
ClangAttrEmitter.h
ClangDiagnosticsEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
ClangDiagnosticsEmitter.h Initial work to improve documentation for Clang's diagnostics, from Matthieu Monrocq 2011-04-15 22:04:07 +00:00
ClangSACheckersEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
ClangSACheckersEmitter.h Add the ClangSACheckersEmitter tablegen backend which will be used for the clang static analyzer. 2011-02-14 17:58:52 +00:00
CMakeLists.txt Fix Clang attribute reader tblgen output for a corresponding fix on the Clang side 2011-07-28 20:55:16 +00:00
CodeEmitterGen.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeEmitterGen.h Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenDAGPatterns.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenDAGPatterns.h Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenInstruction.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenInstruction.h Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenIntrinsics.h Change how tblgen generates attributes for intrinsics to use a single 2011-05-28 06:31:34 +00:00
CodeGenRegisters.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenRegisters.h Store CodeGenRegisters as pointers so they won't be reallocated. 2011-06-18 04:26:06 +00:00
CodeGenTarget.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
CodeGenTarget.h Add support for alternative register names, useful for instructions whose operands are logically equivalent to existing registers, but happen to be printed specially. For example, an instruciton that prints d0[0] instead of s0. 2011-06-27 21:06:21 +00:00
DAGISelEmitter.cpp Teach TableGen to pre-calculate register enum values when creating the 2011-03-11 02:19:02 +00:00
DAGISelEmitter.h Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
DAGISelMatcher.cpp Rework our internal representation of node predicates to expose more 2011-04-17 21:38:24 +00:00
DAGISelMatcher.h Rework our internal representation of node predicates to expose more 2011-04-17 21:38:24 +00:00
DAGISelMatcherEmitter.cpp Rework our internal representation of node predicates to expose more 2011-04-17 21:38:24 +00:00
DAGISelMatcherGen.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
DAGISelMatcherOpt.cpp Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
DisassemblerEmitter.cpp Consolidate some TableGen diagnostic helper functions. 2011-06-21 22:55:50 +00:00
DisassemblerEmitter.h
EDEmitter.cpp ARM refactoring assembly parsing of memory address operands. 2011-08-03 23:50:40 +00:00
EDEmitter.h
Error.cpp Consolidate some TableGen diagnostic helper functions. 2011-06-21 22:55:50 +00:00
Error.h Consolidate some TableGen diagnostic helper functions. 2011-06-21 22:55:50 +00:00
FastISelEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
FastISelEmitter.h
FixedLenDecoderEmitter.cpp Make the FixedLengthDecoderEmitter smart enough to autogenerate decoders for encodings like "let Inst{11-7} = foo;", where the RHS has no bitwidth specifiers. 2011-08-01 22:45:43 +00:00
FixedLenDecoderEmitter.h Enhance the fixed-length decoder emitter to support parsing scattered fields. 2011-07-28 21:54:31 +00:00
InstrEnumEmitter.cpp eliminate the Records global variable, patch by Garrison Venn! 2010-12-13 00:23:57 +00:00
InstrEnumEmitter.h
InstrInfoEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
InstrInfoEmitter.h Merge XXXGenRegisterNames.inc into XXXGenRegisterInfo.inc 2011-06-28 20:07:07 +00:00
IntrinsicEmitter.cpp Change Intrinsic::getDeclaration and friends to take an ArrayRef. 2011-07-14 17:45:39 +00:00
IntrinsicEmitter.h
LLVMCConfigurationEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
LLVMCConfigurationEmitter.h various cleanups to tblgen, patch by Garrison Venn! 2010-12-15 04:48:22 +00:00
Makefile
NeonEmitter.cpp Revert "Shorten some ARM builtin names by removing unnecessary "neon" prefix." 2011-06-24 22:13:17 +00:00
NeonEmitter.h Use intrinsics for Neon vmull operations. Radar 9208957. 2011-03-31 00:09:35 +00:00
OptParserEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
OptParserEmitter.h
PseudoLoweringEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
PseudoLoweringEmitter.h Unconstify Inits 2011-07-29 22:43:06 +00:00
Record.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
Record.h Unconstify Inits 2011-07-29 22:43:06 +00:00
RegisterInfoEmitter.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
RegisterInfoEmitter.h Teach tblgen to emit MCRegisterClasses. 2011-07-22 00:44:39 +00:00
SetTheory.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
SetTheory.h Unconstify Inits 2011-07-29 22:43:06 +00:00
StringMatcher.cpp
StringMatcher.h
StringToOffsetTable.h
SubtargetEmitter.cpp Eliminate "const" from extern const to fix breakeage since r135184 on msvc. 2011-07-15 12:50:21 +00:00
SubtargetEmitter.h - Added MCSubtargetInfo to capture subtarget features and scheduling 2011-07-01 20:45:01 +00:00
TableGen.cpp Revert r134921, 134917, 134908 and 134907. They're causing failures 2011-07-11 23:06:52 +00:00
TableGenBackend.cpp
TableGenBackend.h
TGLexer.cpp Consolidate some TableGen diagnostic helper functions. 2011-06-21 22:55:50 +00:00
TGLexer.h Consolidate some TableGen diagnostic helper functions. 2011-06-21 22:55:50 +00:00
TGParser.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
TGParser.h Unconstify Inits 2011-07-29 22:43:06 +00:00
TGValueTypes.cpp Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
X86DisassemblerShared.h
X86DisassemblerTables.cpp Add support for the VIA PadLock instructions. 2011-04-04 16:58:13 +00:00
X86DisassemblerTables.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
X86ModRMFilters.h
X86RecognizableInstr.cpp Unconstify Inits 2011-07-29 22:43:06 +00:00
X86RecognizableInstr.h Make the disassembler able to disassemble a bunch of instructions with names in the TableGen files containing "64" on x86-32. This includes a bunch of x87 instructions, like fld, and a bunch of SSSE3 instructions on MMX registers like pshufb. Part of PR8873. 2011-07-16 02:41:28 +00:00