Home
last modified time | relevance | path

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

123

/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kInstrInfo.td596 MxOperand jOp, ComplexPattern jPat,
599 MxOperand oOp, ComplexPattern oPat,
632 ComplexPattern JPat = jPat;
635 ComplexPattern OPat = oPat;
638 ComplexPattern EPat = ePat;
641 ComplexPattern PPat = pPat;
644 ComplexPattern FPat = fPat;
647 ComplexPattern BPat = bPat;
650 ComplexPattern QPat = qPat;
653 ComplexPattern KPat = kPat;
[all …]
/freebsd-14.2/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-14.2/contrib/llvm-project/llvm/utils/TableGen/
H A DCodeGenTarget.h218 class ComplexPattern {
226 ComplexPattern(Record *R);
H A DDAGISelMatcherEmitter.cpp65 std::vector<const ComplexPattern*> ComplexPatterns;
88 MapVector<const ComplexPattern *, unsigned> ComplexPatternUsage; in MatcherTableEmitter()
118 std::vector<std::pair<const ComplexPattern *, unsigned>> ComplexPatternList( in MatcherTableEmitter()
123 for (const auto &ComplexPattern : ComplexPatternList) in MatcherTableEmitter() local
124 ComplexPatterns.push_back(ComplexPattern.first); in MatcherTableEmitter()
203 unsigned getComplexPat(const ComplexPattern &P) { in getComplexPat()
712 const ComplexPattern &Pattern = CCPM->getPattern(); in EmitMatcher()
1120 const ComplexPattern &P = *ComplexPatterns[i]; in EmitPredicateFunctions()
H A DDAGISelMatcher.h30 class ComplexPattern; variable
723 const ComplexPattern &Pattern;
736 CheckComplexPatMatcher(const ComplexPattern &pattern, unsigned matchnumber, in CheckComplexPatMatcher()
741 const ComplexPattern &getPattern() const { return Pattern; } in getPattern()
H A DCodeGenTarget.cpp602 ComplexPattern::ComplexPattern(Record *R) { in ComplexPattern() function in ComplexPattern
H A DGlobalISelEmitter.cpp912 const auto &ComplexPattern = ComplexPatternEquivs.find(R); in importComplexPatternOperandMatcher() local
913 if (ComplexPattern == ComplexPatternEquivs.end()) in importComplexPatternOperandMatcher()
917 OM.addPredicate<ComplexPatternOperandMatcher>(OM, *ComplexPattern->second); in importComplexPatternOperandMatcher()
1292 const auto &ComplexPattern = ComplexPatternEquivs.find(ChildRec); in importExplicitUseRenderer() local
1293 if (ComplexPattern == ComplexPatternEquivs.end()) in importExplicitUseRenderer()
1299 *ComplexPattern->second, DstChild->getName(), in importExplicitUseRenderer()
H A DCodeGenDAGPatterns.h782 const ComplexPattern *
1114 std::map<Record*, ComplexPattern, LessRecordByID> ComplexPatterns;
1160 const ComplexPattern &getComplexPattern(Record *R) const { in getComplexPattern()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Xtensa/
H A DXtensaOperands.td163 def addr_ish1 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH1", [frameindex]>;
164 def addr_ish2 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH2", [frameindex]>;
165 def addr_ish4 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH4", [frameindex]>;
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrFragments.td339 def addr : ComplexPattern<iPTR, 5, "selectAddr", [], [SDNPWantParent]>;
340 def lea32addr : ComplexPattern<i32, 5, "selectLEAAddr",
344 def lea64_32addr : ComplexPattern<i32, 5, "selectLEA64_32Addr",
349 def tls32addr : ComplexPattern<i32, 5, "selectTLSADDRAddr",
352 def tls32baseaddr : ComplexPattern<i32, 5, "selectTLSADDRAddr",
355 def lea64addr : ComplexPattern<i64, 5, "selectLEAAddr",
359 def tls64addr : ComplexPattern<i64, 5, "selectTLSADDRAddr",
362 def tls64baseaddr : ComplexPattern<i64, 5, "selectTLSADDRAddr",
365 def vectoraddr : ComplexPattern<iPTR, 5, "selectVectorAddr", [],[SDNPWantParent]>;
369 def relocImm : ComplexPattern<iAny, 1, "selectRelocImm",
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIInstrInfo.td1323 def DS1Addr1Offset : ComplexPattern<iPTR, 2, "SelectDS1Addr1Offset">;
1327 def MOVRELOffset : ComplexPattern<iPTR, 2, "SelectMOVRELOffset">;
1329 def VOP3Mods0 : ComplexPattern<untyped, 4, "SelectVOP3Mods0">;
1332 def VOP3Mods : ComplexPattern<untyped, 2, "SelectVOP3Mods">;
1337 def VOP3ModsNonCanonicalizing : ComplexPattern<untyped, 2,
1340 def VOP3NoMods : ComplexPattern<untyped, 1, "SelectVOP3NoMods">;
1342 def VOP3OMods : ComplexPattern<untyped, 3, "SelectVOP3OMods">;
1344 def VOP3PMods : ComplexPattern<untyped, 2, "SelectVOP3PMods">;
1353 def WMMAVISrc : ComplexPattern<untyped, 1, "SelectWMMAVISrc">;
1357 def VOP3OpSel : ComplexPattern<untyped, 2, "SelectVOP3OpSel">;
[all …]
H A DVINTERPInstructions.td147 list<ComplexPattern> pat> : GCNPat <
162 ValueType dst_type, list<ComplexPattern> high_pat> {
H A DAMDGPUGISel.td16 def sd_vsrc0 : ComplexPattern<i32, 1, "">;
21 def sd_vcsrc : ComplexPattern<i32, 1, "">;
H A DSMInstructions.td846 def SMRDImm : ComplexPattern<iPTR, 2, "SelectSMRDImm">;
847 def SMRDImm32 : ComplexPattern<iPTR, 2, "SelectSMRDImm32">;
848 def SMRDSgpr : ComplexPattern<iPTR, 2, "SelectSMRDSgpr">;
849 def SMRDSgprImm : ComplexPattern<iPTR, 3, "SelectSMRDSgprImm">;
850 def SMRDBufferImm : ComplexPattern<iPTR, 1, "SelectSMRDBufferImm">;
851 def SMRDBufferImm32 : ComplexPattern<iPTR, 1, "SelectSMRDBufferImm32">;
852 def SMRDBufferSgprImm : ComplexPattern<iPTR, 2, "SelectSMRDBufferSgprImm">;
H A DAMDGPUCombine.td127 // FIXME: Should have ComplexPattern like in/out matchers
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DSMEInstrFormats.td20 def tileslice8 : ComplexPattern<i32 , 2, "SelectSMETileSlice<15, 1>", []>;
21 def tileslice16 : ComplexPattern<i32 , 2, "SelectSMETileSlice<7, 1>", []>;
22 def tileslice32 : ComplexPattern<i32 , 2, "SelectSMETileSlice<3, 1>", []>;
529 ComplexPattern addr,
530 ComplexPattern tileslice> {
675 ComplexPattern imm2tile,
676 ComplexPattern addr,
677 ComplexPattern tileslice> {
870 ComplexPattern tileslice> {
1057 ComplexPattern imm2tile,
[all …]
H A DSVEInstrFormats.td325 def sve_ext_imm_0_31 : ComplexPattern<i64, 1, "SelectEXTImm<31, 8>">;
326 def sve_ext_imm_0_63 : ComplexPattern<i64, 1, "SelectEXTImm<63, 4>">;
327 def sve_ext_imm_0_127 : ComplexPattern<i64, 1, "SelectEXTImm<127, 2>">;
328 def sve_ext_imm_0_255 : ComplexPattern<i64, 1, "SelectEXTImm<255, 1>">;
437 def SVEDup0 : ComplexPattern<vAny, 0, "SelectDupZero", []>;
438 def SVEDupNeg0 : ComplexPattern<vAny, 0, "SelectDupNegativeZero", []>;
577 ComplexPattern cast, Instruction inst>
6018 ComplexPattern imm_b, ComplexPattern imm_h,
6019 ComplexPattern imm_s, ComplexPattern imm_d> {
9181 ComplexPattern imm_b, ComplexPattern imm_h,
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Target/GlobalISel/
H A DSelectionDAGCompat.td252 // Specifies the GlobalISel equivalents for SelectionDAG's ComplexPattern.
254 class GIComplexPatternEquiv<ComplexPattern seldag> {
255 ComplexPattern SelDAGEquivalent = seldag;
H A DTarget.td29 // Defines a matcher for complex operands. This is analogous to ComplexPattern
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfoZb.td269 def sh1add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<1>", [], [], 6>;
270 def sh2add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<2>", [], [], 6>;
271 def sh3add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<3>", [], [], 6>;
273 def sh1add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<1>", [], [], 6>;
274 def sh2add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<2>", [], [], 6>;
275 def sh3add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<3>", [], [], 6>;
682 defvar pat = !cast<ComplexPattern>("sh"#i#"add_op");
683 // More complex cases use a ComplexPattern.
776 // More complex cases use a ComplexPattern.
778 defvar pat = !cast<ComplexPattern>("sh"#i#"add_uw_op");
H A DRISCVInstrInfoZicbo.td76 def AddrRegImmLsb00000 : ComplexPattern<iPTR, 2, "SelectAddrRegImmLsb00000">;
H A DRISCVInstrInfo.td394 def FrameAddrRegImm : ComplexPattern<iPTR, 2, "SelectFrameAddrRegImm",
396 def AddrRegImm : ComplexPattern<iPTR, 2, "SelectAddrRegImm">;
1188 def sexti16 : ComplexPattern<XLenVT, 1, "selectSExtBits<16>">;
1189 def sexti32 : ComplexPattern<i64, 1, "selectSExtBits<32>">;
1193 def zexti32 : ComplexPattern<i64, 1, "selectZExtBits<32>">;
1194 def zexti16 : ComplexPattern<XLenVT, 1, "selectZExtBits<16>">;
1195 def zexti16i32 : ComplexPattern<i32, 1, "selectZExtBits<16>">;
1196 def zexti8 : ComplexPattern<XLenVT, 1, "selectZExtBits<8>">;
1197 def zexti8i32 : ComplexPattern<i32, 1, "selectZExtBits<8>">;
1336 def riscv_setne : ComplexPattern<XLenVT, 1, "selectSETNE", [setcc]>;
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrMemory.td33 def AddrOps32 : ComplexPattern<i32, 2, "SelectAddrOperands32">;
34 def AddrOps64 : ComplexPattern<i64, 2, "SelectAddrOperands64">;
/freebsd-14.2/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-14.2/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYInstrFormatsF1.td220 def Mem8SL2 : Operand<iPTR>, ComplexPattern<iPTR, 2, "SelectAddrRegImm8", []> {
226 def FRRS : Operand<iPTR>, ComplexPattern<iPTR, 3, "SelectAddrRegReg", []> {

123