Home
last modified time | relevance | path

Searched refs:ComplexPattern (Results 1 – 25 of 56) sorted by relevance

123

/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kInstrInfo.td547 MxOperand jOp, ComplexPattern jPat,
550 MxOperand oOp, ComplexPattern oPat,
553 MxOperand eOp, ComplexPattern ePat,
583 ComplexPattern JPat = jPat;
586 ComplexPattern OPat = oPat;
589 ComplexPattern EPat = ePat;
592 ComplexPattern PPat = pPat;
595 ComplexPattern FPat = fPat;
598 ComplexPattern BPat = bPat;
601 ComplexPattern QPat = qPat;
[all …]
H A DM68kInstrBits.td62 class MxBTST_MR<MxType TYPE, MxOperand MEMOpd, ComplexPattern MEMPat,
68 class MxBTST_MI<MxType TYPE, MxOperand MEMOpd, ComplexPattern MEMPat,
H A DM68kInstrData.td68 class MxMove_MR<MxOperand MEMOpd, ComplexPattern MEMPat, MxType REG,
73 class MxMove_MI<MxOperand MEMOpd, ComplexPattern MEMPat, MxType TYPE,
85 class MxMove_RM<MxType REG, MxOperand MEMOpd, ComplexPattern MEMPat,
130 MxOperand DSTOpd, ComplexPattern DSTPat,
131 MxOperand SRCOpd, ComplexPattern SRCPat,
140 multiclass MMxMove_MM<MxType TYPE, MxOperand DSTOpd, ComplexPattern DSTPat,
552 class MxLEA<MxOperand SRCOpd, ComplexPattern SRCPat, MxEncEA EA, MxEncExt EXT>
H A DM68kInstrControl.td97 class MxSccM<string CC, MxOperand MEMOpd, ComplexPattern MEMPat,
121 class MxJMP<MxOperand LOCOp, ComplexPattern LOCPat, MxEncEA EA, MxEncExt EXT>
H A DM68kInstrArithmetic.td137 class MxBiArOp_RFRM<string MN, SDNode NODE, MxType TYPE, MxOperand OPD, ComplexPattern PAT,
153 MxOperand MEMOpd, ComplexPattern MEMPat,
163 MxOperand MEMOpd, ComplexPattern MEMPat,
388 class MxCmp_MI<MxType TYPE, MxOperand MEMOpd, ComplexPattern MEMPat,
408 class MxCmp_RM<MxType TYPE, MxOperand MEMOpd, ComplexPattern MEMPat,
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSDNodeProperties.td32 def SDNPWantRoot : SDNodeProperty; // ComplexPattern gets the root of match
33 def SDNPWantParent : SDNodeProperty; // ComplexPattern gets the parent
/freebsd-13.1/contrib/llvm-project/llvm/utils/TableGen/
H A DCodeGenTarget.h204 class ComplexPattern {
212 ComplexPattern(Record *R);
H A DDAGISelMatcherEmitter.cpp64 DenseMap<const ComplexPattern*, unsigned> ComplexPatternMap;
65 std::vector<const ComplexPattern*> ComplexPatterns;
147 unsigned getComplexPat(const ComplexPattern &P) { in getComplexPat()
624 const ComplexPattern &Pattern = CCPM->getPattern(); in EmitMatcher()
952 const ComplexPattern &P = *ComplexPatterns[i]; in EmitPredicateFunctions()
H A DDAGISelMatcher.h24 class ComplexPattern; variable
690 const ComplexPattern &Pattern;
703 CheckComplexPatMatcher(const ComplexPattern &pattern, unsigned matchnumber, in CheckComplexPatMatcher()
708 const ComplexPattern &getPattern() const { return Pattern; } in getPattern()
H A DCodeGenDAGPatterns.h769 const ComplexPattern *
1101 std::map<Record*, ComplexPattern, LessRecordByID> ComplexPatterns;
1147 const ComplexPattern &getComplexPattern(Record *R) const { in getComplexPattern()
H A DDAGISelMatcherGen.cpp566 if (const ComplexPattern *CP = in EmitMatcherCode()
607 const ComplexPattern &CP = *N->getComplexPatternInfo(CGP); in EmitMatcherCode()
/freebsd-13.1/contrib/llvm-project/llvm/include/llvm/Target/GlobalISel/
H A DSelectionDAGCompat.td209 // Specifies the GlobalISel equivalents for SelectionDAG's ComplexPattern.
211 class GIComplexPatternEquiv<ComplexPattern seldag> {
212 ComplexPattern SelDAGEquivalent = seldag;
H A DTarget.td26 // Defines a matcher for complex operands. This is analogous to ComplexPattern
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfoVSDPatterns.td40 def SplatPat : ComplexPattern<vAny, 1, "selectVSplat", [splat_vector, rv32_splat_i64], […
41 def SplatPat_simm5 : ComplexPattern<vAny, 1, "selectVSplatSimm5", [splat_vector, rv32_splat_i64], […
42 def SplatPat_uimm5 : ComplexPattern<vAny, 1, "selectVSplatUimm5", [splat_vector, rv32_splat_i64], […
44 : ComplexPattern<vAny, 1, "selectVSplatSimm5Plus1",
47 : ComplexPattern<vAny, 1, "selectVSplatSimm5Plus1NonZero",
131 ComplexPattern SplatPatKind,
160 !cast<ComplexPattern>(SplatPat#_#ImmType),
224 ComplexPattern SplatPatKind,
267 ComplexPattern splatpat_kind> {
H A DRISCVInstrInfoVVLPatterns.td264 def sew8simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<8>", []>;
265 def sew16simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<16>", []>;
266 def sew32simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<32>", []>;
267 def sew64simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<64>", []>;
309 ComplexPattern SplatPatKind,
351 !cast<ComplexPattern>(SplatPat#_#ImmType),
467 CondCode cc, ComplexPattern splatpat_kind> {
913 defvar ImmPat = !cast<ComplexPattern>("sew"#vti.SEW#"simm5");
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMicroMipsInstrInfo.td13 def addrimm11 : ComplexPattern<iPTR, 2, "selectIntAddr11MM", [frameindex]>;
14 def addrimm12 : ComplexPattern<iPTR, 2, "selectIntAddr12MM", [frameindex]>;
15 def addrimm16 : ComplexPattern<iPTR, 2, "selectIntAddr16MM", [frameindex]>;
16 def addrimm4lsl2 : ComplexPattern<iPTR, 2, "selectIntAddrLSL2MM", [frameindex]>;
243 class StorePairMM<string opstr, ComplexPattern Addr = addr>
251 class LoadPairMM<string opstr, ComplexPattern Addr = addr>
544 InstrItinClass Itin = NoItinerary, ComplexPattern Addr = addr> :
552 InstrItinClass Itin = NoItinerary, ComplexPattern Addr = addr> :
561 ComplexPattern Addr = addr> :
570 ComplexPattern Addr = addr> :
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUGISel.td16 def sd_vsrc0 : ComplexPattern<i32, 1, "">;
21 def sd_vcsrc : ComplexPattern<i32, 1, "">;
H A DSIInstrInfo.td1328 def DS1Addr1Offset : ComplexPattern<i32, 2, "SelectDS1Addr1Offset">;
1332 def MOVRELOffset : ComplexPattern<i32, 2, "SelectMOVRELOffset">;
1334 def VOP3Mods0 : ComplexPattern<untyped, 4, "SelectVOP3Mods0">;
1335 def VOP3Mods : ComplexPattern<untyped, 2, "SelectVOP3Mods">;
1336 def VOP3NoMods : ComplexPattern<untyped, 1, "SelectVOP3NoMods">;
1338 def VOP3Mods_nnan : ComplexPattern<fAny, 2, "SelectVOP3Mods_NNaN">;
1340 def VOP3OMods : ComplexPattern<untyped, 3, "SelectVOP3OMods">;
1342 def VOP3PMods : ComplexPattern<untyped, 2, "SelectVOP3PMods">;
1344 def VOP3OpSel : ComplexPattern<untyped, 2, "SelectVOP3OpSel">;
1346 def VOP3OpSelMods : ComplexPattern<untyped, 2, "SelectVOP3OpSelMods">;
[all …]
H A DR600Instructions.td77 def ADDRParam : ComplexPattern<i32, 2, "SelectADDRParam", [], []>;
78 def ADDRDWord : ComplexPattern<i32, 1, "SelectADDRDWord", [], []>;
79 def ADDRVTX_READ : ComplexPattern<i32, 2, "SelectADDRVTX_READ", [], []>;
80 def ADDRGA_CONST_OFFSET : ComplexPattern<i32, 1, "SelectGlobalValueConstantOffset", [], []>;
81 def ADDRGA_VAR_OFFSET : ComplexPattern<i32, 2, "SelectGlobalValueVariableOffset", [], []>;
82 def ADDRIndirect : ComplexPattern<iPTR, 2, "SelectADDRIndirect", [], []>;
710 ComplexPattern addrPat> {
H A DSMInstructions.td768 def SMRDImm : ComplexPattern<i64, 2, "SelectSMRDImm">;
769 def SMRDImm32 : ComplexPattern<i64, 2, "SelectSMRDImm32">;
770 def SMRDSgpr : ComplexPattern<i64, 2, "SelectSMRDSgpr">;
771 def SMRDBufferImm : ComplexPattern<i32, 1, "SelectSMRDBufferImm">;
772 def SMRDBufferImm32 : ComplexPattern<i32, 1, "SelectSMRDBufferImm32">;
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DSVEInstrFormats.td212 def SVE8BitLslImm : ComplexPattern<i32, 2, "SelectSVE8BitLslImm", [imm]>;
220 def SVEShiftImmL8 : ComplexPattern<i32, 1, "SelectSVEShiftImm<0, 7>", []>;
267 def sve_ext_imm_0_1 : ComplexPattern<i32, 1, "SelectEXTImm<1, 8>">;
268 def sve_ext_imm_0_3 : ComplexPattern<i32, 1, "SelectEXTImm<3, 4>">;
269 def sve_ext_imm_0_7 : ComplexPattern<i32, 1, "SelectEXTImm<7, 2>">;
270 def sve_ext_imm_0_15 : ComplexPattern<i32, 1, "SelectEXTImm<15, 1>">;
432 def SVEDup0 : ComplexPattern<i64, 0, "SelectDupZero", []>;
433 def SVEDup0Undef : ComplexPattern<i64, 0, "SelectDupZeroOrUndef", []>;
477 ComplexPattern cast, Instruction inst>
8312 ComplexPattern imm_b, ComplexPattern imm_h,
[all …]
H A DAArch64InstrFormats.td390 def am_sve_fi : ComplexPattern<i64, 2, "SelectAddrModeFrameIndexSVE", []>;
986 ComplexPattern<Ty, 2, "SelectArithShiftedRegister", []> {
1016 ComplexPattern<Ty, 2, "SelectLogicalShiftedRegister", []> {
1075 : Operand<Ty>, ComplexPattern<Ty, 2, "SelectArithImmed", [imm]> {
1103 : Operand<Ty>, ComplexPattern<Ty, 2, "SelectNegArithImmed", [imm]> {
3133 def am_indexed8 : ComplexPattern<i64, 2, "SelectAddrModeIndexed8", []>;
3314 def ro_Xindexed8 : ComplexPattern<i64, 4, "SelectAddrModeXRO<8>", []>;
3336 def ro_Windexed8 : ComplexPattern<i64, 4, "SelectAddrModeWRO<8>", []>;
3406 class ROAddrMode<ComplexPattern windex, ComplexPattern xindex,
3409 ComplexPattern Wpat = windex;
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMInstrThumb.td186 ComplexPattern<i32, 2, "SelectThumbAddrModeRR", []> {
199 ComplexPattern<i32, 2, "SelectThumbAddrModeRRSext", []> {
215 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S1", []> {
223 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S2", []> {
231 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S4", []> {
243 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S4", []> {
255 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S2", []> {
267 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S1", []> {
281 ComplexPattern<i32, 2, "SelectThumbAddrModeSP", []> {
291 def AddLikeOrOp : ComplexPattern<i32, 1, "SelectAddLikeOr", [],
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/Lanai/
H A DLanaiInstrInfo.td179 def ADDRrr : ComplexPattern<i32, 3, "selectAddrRr", [], []>;
180 def ADDRri : ComplexPattern<i32, 3, "selectAddrRi", [frameindex], []>;
181 def ADDRsls : ComplexPattern<i32, 1, "selectAddrSls", [frameindex], []>;
182 def ADDRspls : ComplexPattern<i32, 3, "selectAddrSpls", [frameindex], []>;
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/ARC/
H A DARCInstrInfo.td91 def FrameADDR_ri : ComplexPattern<i32, 2, "SelectFrameADDR_ri",
93 def AddrModeS9 : ComplexPattern<i32, 2, "SelectAddrModeS9", []>;
94 def AddrModeImm : ComplexPattern<i32, 2, "SelectAddrModeImm", []>;
95 def AddrModeFar : ComplexPattern<i32, 2, "SelectAddrModeFar", []>;

123