llvm-project/llvm/test/TableGen
Min-Yih Hsu b99365a7f4 [TableGen] Add a new `encoder` directive into VarLenCodeEmitterGen
The new encoder directive can be used to specify custom encoder for a
single operand or slice. This is different from the EncoderMethod field
within an Operand, which affects every operands in the target.

In addition, this patch also changes the function signature of the
encoder method -- a new argument, InsertPost, is added to both the
default one (i.e. getMachineValue) and the custom one. This argument
provides the bit position where the operand will eventually be inserted.

Differential Revision: https://reviews.llvm.org/D119100
2022-02-14 20:41:15 -08:00
..
Common [TableGen] [tests] Change integer ranges to use new '...' punctuation 2020-10-26 10:47:29 -04:00
FixedLenDecoderEmitter [TableGen] Fix excessive compile time issue in FixedLenDecoderEmitter 2021-03-17 09:28:50 +00:00
GICombinerEmitter
2003-08-03-PassCode.td
2006-09-18-LargeInt.td
2010-03-24-PrematureDefaults.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
AliasAsmString.td
AllowDuplicateRegisterNames.td
AnonDefinitionOnDemand.td
AsmPredicateCombining.td
AsmPredicateCombiningRISCV.td [llvm-tblgen][RISCV] Make llvm-tblgen RISCVCompressInstEmitter to be common infra across different targets 2021-11-18 11:14:27 +08:00
AsmPredicateCondsEmission.td
AsmVariant.td
AsmWriterPCRelOp.td [TableGen] Fix printing second PC-relative operand 2021-06-23 13:27:37 +07:00
BigEncoder.td
BitOffsetDecoder.td [TableGen] Fix excessive compile time issue in FixedLenDecoderEmitter 2021-03-17 09:28:50 +00:00
BitsInit.td
BitsInitOverflow.td
CStyleComment.td
ClassInstanceValue.td
CodeGenSchedule-duplicate-instrw.td
ConcatenatedSubregs.td
ConstraintChecking.inc
ConstraintChecking1.td
ConstraintChecking2.td
ConstraintChecking3.td
ConstraintChecking4.td
ConstraintChecking5.td
ConstraintChecking6.td
ConstraintChecking7.td
ContextlessPredicates.td
DAGDefaultOps.td [TableGen] Use sign rotated VBR for OPC_EmitInteger. 2021-05-02 12:40:44 -07:00
Dag.td
DefaultOpsGlobalISel.td
DefmInherit.td
DefmInsideMultiClass.td
DuplicateFieldValues.td
FastISelEmitter.td
FieldAccess.td
ForeachList.td
ForeachLoop.td
ForwardRef.td
GeneralList.td
GlobalISelEmitter-PR39045.td
GlobalISelEmitter-SDNodeXForm-timm.td
GlobalISelEmitter-atomic_store.td
GlobalISelEmitter-immAllZeroOne.td [TableGen] Remove spurious GISEL prefix from test. 2020-10-30 15:54:57 -04:00
GlobalISelEmitter-immarg-literal-pattern.td
GlobalISelEmitter-input-discard.td
GlobalISelEmitter-nested-subregs.td [TableGen][GlobalISel] add handling of nested *_SUBREG 2020-10-05 10:42:18 +02:00
GlobalISelEmitter-output-discard.td
GlobalISelEmitter-setcc.td
GlobalISelEmitter-zero-instr.td [GlobalISel][TableGen] Fix seg fault for zero instruction 2020-11-24 07:47:58 +01:00
GlobalISelEmitter-zero-reg.td
GlobalISelEmitter.td [TableGen][GlobalISel] Allow duplicate RendererFns 2021-02-12 15:05:32 +00:00
GlobalISelEmitterCustomPredicate.td [TableGen/GlobalISel] Emit MI_predicate custom code for PatFrags (not only PatFrag) 2021-03-16 12:44:09 +01:00
GlobalISelEmitterMatchTableOptimizer.td
GlobalISelEmitterMatchTableOptimizerSameOperand-invalid.td [GlobalISel][Tablegen] Fix SameOperandMatcher's isIdentical check 2021-10-28 13:37:12 +02:00
GlobalISelEmitterMatchTableOptimizerSameOperand.td [GlobalISel][Tablegen] Fix SameOperandMatcher's isIdentical check 2021-10-28 13:37:12 +02:00
GlobalISelEmitterOverloadedPtr.td
GlobalISelEmitterRegSequence.td
GlobalISelEmitterSkippedPatterns.td
GlobalISelEmitterSubreg.td [GlobalISel][TableGen] Fix ConstrainOperandRC bug 2021-01-05 09:30:04 +01:00
GlobalISelEmitterVariadic.td
HwModeEncodeDecode.td
HwModeSelect.td
Include.inc
Include.td
IntBitInit.td
IntSpecialValues.td
InvalidMCSchedClassDesc.td [MCA] Add support for in-order CPUs 2021-03-04 14:08:19 +03:00
JSON-check.py
JSON.td
LazyChange.td
LetInsideMultiClasses.td
ListArgs.td
ListArgsSimple.td
ListConversion.td
ListManip.td
ListOfList.td
ListSlices.td [TableGen] Resolve concrete but not complete field access initializers 2021-04-13 15:14:56 -07:00
LoLoL.td
MixedCasedMnemonic.td [TableGen] Allow mnemonics aliases with uppercase 2021-04-16 09:58:20 -04:00
MnemonicAlias.td [TableGen] Allow identical MnemonicAliases with no predicate 2021-06-30 10:53:39 +01:00
MultiClass-def-fail.td
MultiClass-defm-fail.td
MultiClass-defm.td
MultiClass.td
MultiClassDefName.td
MultiClassInherit.td
MultiPat.td
NestedForeach.td
Paste.td
RegisterBankEmitter.td
RegisterClass.td
RegisterEncoder.td
RegisterInfoEmitter-regcost-list.td Support a list of CostPerUse values 2021-01-29 10:14:52 +05:30
RegisterInfoEmitter-regcost-tuple.td Support a list of CostPerUse values 2021-01-29 10:14:52 +05:30
RegisterInfoEmitter-regcost.td Support a list of CostPerUse values 2021-01-29 10:14:52 +05:30
RegisterInfoEmitter-tsflags.td [TableGen] Allow target specific flags for RegisterClass 2021-08-31 22:29:11 -04:00
RelTest.td
SchedModelError.td
SetTheory.td
SiblingForeach.td
Slice.td
String.td
SuperSubclassSameName.td
TargetInstrInfo.td
TargetInstrSpec.td
TemplateArgRename.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
Tree.td
TreeNames.td
TwoLevelName.td
UnsetBitInit.td
UnterminatedComment.td
ValidIdentifiers.td
VarLenEncoder.td [TableGen] Add a new `encoder` directive into VarLenCodeEmitterGen 2022-02-14 20:41:15 -08:00
address-space-patfrags.td
ambiguous-composition.td
arithmetic.td [TableGen] [AMDGPU] Add !sub operator for subtraction 2020-10-28 12:27:53 -04:00
assert.td [TableGen] Fix two bugs in 'defm' when complex 'assert' is involved. 2021-04-30 11:31:06 -04:00
bare-minimum-psets.td [TableGen] Allow targets to entirely ignore Psets for registers 2021-09-23 23:07:35 -04:00
cast-list-initializer.td
cast-multiclass.td
cast-string.td [TableGen] Enhance !cast<string> to handle bit and bits types. 2021-01-14 10:20:35 -05:00
cast-typeerror.td
cast.td
code.td [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
compare.td [TableGen] Enhance the six comparison bang operators. 2020-11-13 09:57:27 -05:00
cond-bitlist.td
cond-default.td
cond-empty-list-arg.td [TableGen] Eliminate uses of true and false in .td files. 2020-10-31 10:54:33 -04:00
cond-inheritance.td
cond-let.td
cond-list.td
cond-subclass.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
cond-type.td
cond-usage.td
condsbit.td [TableGen] Add true and false literals to represent booleans 2020-11-05 09:07:21 -05:00
dag-functional.td
dag-isel-complexpattern.td [TableGen][SelectionDAG] Use ComplexPattern type for non-leaf nodes 2021-12-03 07:04:59 +00:00
dag-isel-regclass-emit-enum.td [TableGen] Use sign rotated VBR for OPC_EmitInteger. 2021-05-02 12:40:44 -07:00
dag-isel-res-order.td
dag-isel-subregs.td [TableGen] Use sign rotated VBR for OPC_EmitInteger. 2021-05-02 12:40:44 -07:00
defmclass.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
defset-typeerror.td
defset.td
defvar.td
detailed-records.td [TableGen] [DetailedRecords] Print record name that is null string as "" 2021-01-27 10:41:46 -05:00
directive1.td [openacc][openmp] Reduce number of generated file and prefer inclusion of .inc 2021-03-23 09:16:53 -04:00
directive2.td [openacc][openmp] Reduce number of generated file and prefer inclusion of .inc 2021-03-23 09:16:53 -04:00
directive3.td [openacc][openmp] Reduce number of generated file and prefer inclusion of .inc 2021-03-23 09:16:53 -04:00
duplicate-include.inc
duplicate-include.td
empty-psets.td [TableGen] Allow targets to entirely ignore Psets for registers 2021-09-23 23:07:35 -04:00
empty.td [TableGen] Enhance !empty and !size to handle strings and DAGs. 2020-10-19 09:22:20 -04:00
eq-unset.td
eq.td
eqbit.td
field-access-initializers.td [TableGen] Resolve concrete but not complete field access initializers 2021-04-13 15:14:56 -07:00
filter.td [TableGen] Add the !filter bang operator. 2020-11-09 10:56:55 -05:00
find.td [TableGen] Add the !find bang operator 2021-04-28 09:51:00 -04:00
foldl.td
foreach-eval.td
foreach-leak.td Use {LITERAL} instead of regex escaping in some lit tests. NFC. 2022-01-14 10:55:00 +00:00
foreach-multiclass.td [TableGen] Fix instantiating multiclass in foreach 2021-01-29 10:25:33 -05:00
foreach-range-parse-errors0.td [TableGen] Add true and false literals to represent booleans 2020-11-05 09:07:21 -05:00
foreach-range-parse-errors1.td
foreach-range-parse-errors2.td
foreach-range-parse-errors3.td
foreach-range-parse-errors4.td
foreach-range-parse-errors5.td
foreach-variable-range.td
foreach.td
generic-tables-instruction.td
generic-tables.td [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
get-operand-type.td
getsetop.td [TableGen] Change !getop and !setop to !getdagop and !setdagop. 2020-10-23 10:36:05 -04:00
gisel-physreg-input.td
if-empty-list-arg.td
if-type.td
if.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
ifbit.td
ifstmt.td
immarg-predicated.td [GISel] Teach TableGen to check predicates of immediate operands in patterns 2021-04-30 10:18:45 +02:00
immarg.td
inhibit-pset.td
interleave.td [TableGen] Fix bug in !interleave operator 2020-12-28 12:17:24 -05:00
intrin-properties.td [TableGen] Add IntrNoMerge as intrinsic property 2021-03-02 09:04:50 -08:00
intrin-side-effects.td [IR] Make nosync, nofree and willreturn default for intrinsics. 2020-10-20 11:57:19 +02:00
intrinsic-long-name.td
intrinsic-pointer-to-any.td
intrinsic-struct.td
intrinsic-varargs.td
isa.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
lisp.td
list-element-bitref.td
listconcat.td
listpaste.td
listsplat.td
lit.local.cfg
math.td [TableGen] [AMDGPU] Add !sub operator for subtraction 2020-10-28 12:27:53 -04:00
name-resolution-consistency.td
nested-comment.td
nul-char.td [TableGen] Make the NUL character invalid in .td files 2021-05-13 10:17:45 -04:00
paste-reserved.td [TableGen] Add true and false literals to represent booleans 2020-11-05 09:07:21 -05:00
pr8330.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00
predicate-patfags.td
prep-diag1.td
prep-diag2.td
prep-diag3.td
prep-diag4.td
prep-diag5.td
prep-diag6.td
prep-diag7.td
prep-diag8.td
prep-diag9.td
prep-diag10.td
prep-diag11-include.inc
prep-diag11.td
prep-diag12-include.inc
prep-diag12.td
prep-diag13.td
prep-diag14.td
prep-ifndef-diag-1.td
prep-ifndef-diag-2.td
prep-ifndef.td
prep-region-include.inc
prep-region-processing.td
pset-enum.td
pseudo-inst-expansion.td [TableGen] Allow BitsInit to init integer in pseudo expansion 2021-03-23 11:50:55 +07:00
range-lists.td
rc-weight-override.td
searchabletables-intrinsic.td
self-reference-recursion.td
self-reference-typeerror.td [TableGen] Improve handling of template arguments 2021-03-19 09:57:53 -04:00
self-reference.td [TableGen] Fix anonymous record self-reference in foreach and multiclass 2021-02-01 10:59:07 -05:00
simplify-patfrag.td
size.td [TableGen] Enhance !empty and !size to handle strings and DAGs. 2020-10-19 09:22:20 -04:00
spurious-semi.td [TableGen] Improve error message for semicolon after braced body. 2021-01-12 09:38:05 -05:00
strconcat.td
subst.td
subst2.td
substr.td [TableGen] Add the !substr() bang operator 2020-12-23 10:59:33 -05:00
template-arg-dependency.td
template-args.td [TableGen] Report an error message on a missing comma 2021-04-09 18:48:49 +01:00
true-false.td [TableGen] Add true and false literals to represent booleans 2020-11-05 09:07:21 -05:00
trydecode-emission.td
trydecode-emission2.td
trydecode-emission3.td
unsetop.td
unterminated-c-comment-include.inc
unterminated-c-comment.td
unterminated-code-block-include.inc
unterminated-code-block.td [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
usevalname.td
warn-unused-template-arg.td [TableGen] Emit a warning for unused template args 2021-11-03 11:55:07 +00:00