llvm-6502/utils/TableGen
Bill Schmidt d35da5055b Recognize ValueType operands in source patterns for fast-isel.
Currently the fast-isel table generator recognizes registers, register
classes, and immediates for source pattern operands.  ValueType
operands are not recognized.  This is not a problem for existing
targets with fast-isel support, but will not work for targets like
PowerPC and SPARC that use types in source patterns.

The proposed patch allows ValueType operands and treats them in the
same manner as register classes.  There is no convenient way to map
from a ValueType to a register class, but there's no need to do so.
The table generator already requires that all types in the source
pattern be identical, and we know the register class of the output
operand already.  So we just assign that register class to any
ValueType operands we encounter.

No functional effect on existing targets.  Testing deferred until the
PowerPC target implements fast-isel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182512 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-22 20:45:11 +00:00
..
AsmMatcherEmitter.cpp Handle tied sub-operands in AsmMatcherEmitter 2013-04-27 18:48:23 +00:00
AsmWriterEmitter.cpp This patch that sets the EmitAlias flag in td files 2013-02-05 08:32:10 +00:00
AsmWriterInst.cpp Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
AsmWriterInst.h
CallingConvEmitter.cpp Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
CMakeLists.txt Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
CodeEmitterGen.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
CodeGenDAGPatterns.cpp Allow types to be omitted in output patterns. 2013-03-24 19:37:00 +00:00
CodeGenDAGPatterns.h Make all unnamed RegisterClass TreePatternNodes typed MVT::i32. 2013-03-23 18:08:44 +00:00
CodeGenInstruction.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
CodeGenInstruction.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
CodeGenIntrinsics.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
CodeGenMapTable.cpp Fix for bug 15246 -- out-of-bound error in the TableGen backend, CodeGenMapTable.cpp. 2013-02-14 17:58:13 +00:00
CodeGenRegisters.cpp Add TargetRegisterInfo::getCoveringLanes(). 2013-05-16 18:03:08 +00:00
CodeGenRegisters.h Add TargetRegisterInfo::getCoveringLanes(). 2013-05-16 18:03:08 +00:00
CodeGenSchedule.cpp Machine model: verify well-formed processor resource groups. 2013-04-23 23:45:14 +00:00
CodeGenSchedule.h Machine model: verify well-formed processor resource groups. 2013-04-23 23:45:14 +00:00
CodeGenTarget.cpp Use ArrayRef<MVT::SimpleValueType> when possible. 2013-03-17 17:26:09 +00:00
CodeGenTarget.h Use ArrayRef<MVT::SimpleValueType> when possible. 2013-03-17 17:26:09 +00:00
CTagsEmitter.cpp Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
DAGISelEmitter.cpp Write llvm-tblgen backends as functions instead of sub-classes. 2012-06-11 15:37:55 +00:00
DAGISelMatcher.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
DAGISelMatcher.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
DAGISelMatcherEmitter.cpp Fix comments 2013-02-05 16:53:11 +00:00
DAGISelMatcherGen.cpp Allow types to be omitted in output patterns. 2013-03-24 19:37:00 +00:00
DAGISelMatcherOpt.cpp
DFAPacketizerEmitter.cpp Fix PR14568: Avoid the DFA packetizer from making an invalid read 2012-12-10 22:45:57 +00:00
DisassemblerEmitter.cpp Add AArch64 as an experimental target. 2013-01-31 12:12:40 +00:00
FastISelEmitter.cpp Recognize ValueType operands in source patterns for fast-isel. 2013-05-22 20:45:11 +00:00
FixedLenDecoderEmitter.cpp TableGen/FixedLenDecoderEmitter.cpp: Fix a potential mask overflow in fieldFromInstruction(). 2012-12-26 06:43:14 +00:00
InstrInfoEmitter.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
IntrinsicEmitter.cpp Use the AttributeSet instead of AttributeWithIndex. 2013-01-27 03:25:05 +00:00
LLVMBuild.txt
Makefile Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
OptParserEmitter.cpp Sort a few more #include lines in tools/... unittests/... and utils/... 2013-01-02 10:26:28 +00:00
PseudoLoweringEmitter.cpp PR14992 - Tablegen incorrectly converts ARM tLDMIA_UPD pseudo to tLDMIA 2013-02-13 19:21:47 +00:00
RegisterInfoEmitter.cpp Add TargetRegisterInfo::getCoveringLanes(). 2013-05-16 18:03:08 +00:00
SequenceToOffsetTable.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
SetTheory.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
SetTheory.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
StringToOffsetTable.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
SubtargetEmitter.cpp Machine model: Generate table entries for super-resources. 2013-04-23 23:45:16 +00:00
TableGen.cpp Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
TableGenBackends.h Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
tdtags Add TableGen ctags(1) emitter and helper script. 2013-03-21 23:40:38 +00:00
TGValueTypes.cpp Remove extra semicolons. 2012-10-11 22:25:56 +00:00
X86DisassemblerShared.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
X86DisassemblerTables.cpp Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
X86DisassemblerTables.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
X86ModRMFilters.cpp
X86ModRMFilters.h Fix Doxygen issues: 2012-09-13 12:34:29 +00:00
X86RecognizableInstr.cpp Add CLAC/STAC instruction encoding/decoding support 2013-04-11 04:52:28 +00:00
X86RecognizableInstr.h Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00