Home
last modified time | relevance | path

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

123

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/M68k/
H A DM68kInstrInfo.td439 def MxCP_ARI : ComplexPattern<iPTR, 1, "SelectARI",
442 def MxCP_ARIPI : ComplexPattern<iPTR, 1, "SelectARIPI",
445 def MxCP_ARIPD : ComplexPattern<iPTR, 1, "SelectARIPD",
448 def MxCP_ARID : ComplexPattern<iPTR, 2, "SelectARID",
452 def MxCP_ARII : ComplexPattern<iPTR, 3, "SelectARII",
456 def MxCP_AL : ComplexPattern<iPTR, 1, "SelectAL",
460 def MxCP_PCD : ComplexPattern<iPTR, 1, "SelectPCD",
464 def MxCP_PCI : ComplexPattern<iPTR, 2, "SelectPCI",
547 MxOperand jOp, ComplexPattern jPat,
550 MxOperand oOp, ComplexPattern oPat,
[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,
/netbsd-src/external/apache2/llvm/dist/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
/netbsd-src/external/apache2/llvm/dist/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()
/netbsd-src/external/apache2/llvm/dist/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.td231 def sew8simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<8>", []>;
232 def sew16simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<16>", []>;
233 def sew32simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<32>", []>;
234 def sew64simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<64>", []>;
276 ComplexPattern SplatPatKind,
318 !cast<ComplexPattern>(SplatPat#_#ImmType),
420 CondCode cc, ComplexPattern splatpat_kind> {
764 defvar ImmPat = !cast<ComplexPattern>("sew"#vti.SEW#"simm5");
/netbsd-src/external/apache2/llvm/dist/llvm/docs/GlobalISel/
H A DInstructionSelect.rst83 ``GIComplexOperandMatcher`` and mapped to ComplexPattern with
86 The following predicates are useful for porting ComplexPattern:
/netbsd-src/external/apache2/llvm/dist/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
/netbsd-src/external/apache2/llvm/dist/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> :
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
H A DAMDGPUGISel.td16 def sd_vsrc0 : ComplexPattern<i32, 1, "">;
21 def sd_vcsrc : ComplexPattern<i32, 1, "">;
H A DSIInstrInfo.td1322 def DS1Addr1Offset : ComplexPattern<i32, 2, "SelectDS1Addr1Offset">;
1323 def DS64Bit4ByteAligned : ComplexPattern<i32, 3, "SelectDS64Bit4ByteAligned">;
1324 def DS128Bit8ByteAligned : ComplexPattern<i64, 3, "SelectDS128Bit8ByteAligned">;
1326 def MOVRELOffset : ComplexPattern<i32, 2, "SelectMOVRELOffset">;
1328 def VOP3Mods0 : ComplexPattern<untyped, 4, "SelectVOP3Mods0">;
1329 def VOP3Mods : ComplexPattern<untyped, 2, "SelectVOP3Mods">;
1330 def VOP3NoMods : ComplexPattern<untyped, 1, "SelectVOP3NoMods">;
1332 def VOP3Mods_nnan : ComplexPattern<fAny, 2, "SelectVOP3Mods_NNaN">;
1334 def VOP3OMods : ComplexPattern<untyped, 3, "SelectVOP3OMods">;
1336 def VOP3PMods : ComplexPattern<untyped, 2, "SelectVOP3PMods">;
[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">;
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/
H A DSVEInstrFormats.td197 def SVEAddSubImm8Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i8>", []>;
198 def SVEAddSubImm16Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i16>", []>;
199 def SVEAddSubImm32Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i32>", []>;
200 def SVEAddSubImm64Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i64>", []>;
202 def SVELogicalImm8Pat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i8>", []>;
203 def SVELogicalImm16Pat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i16>", []>;
204 def SVELogicalImm32Pat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i32>", []>;
205 def SVELogicalImm64Pat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i64>", []>;
207 def SVELogicalImm8NotPat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i8, true>", []>;
208 def SVELogicalImm16NotPat : ComplexPattern<i64, 1, "SelectSVELogicalImm<MVT::i16, true>", []>;
[all …]
/netbsd-src/external/apache2/llvm/dist/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", [],
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARC/
H A DARCInstrInfo.td73 def FrameADDR_ri : ComplexPattern<i32, 2, "SelectFrameADDR_ri",
75 def AddrModeS9 : ComplexPattern<i32, 2, "SelectAddrModeS9", []>;
76 def AddrModeImm : ComplexPattern<i32, 2, "SelectAddrModeImm", []>;
77 def AddrModeFar : ComplexPattern<i32, 2, "SelectAddrModeFar", []>;
/netbsd-src/external/apache2/llvm/dist/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], []>;

123