| /freebsd/contrib/llvm-project/llvm/lib/Target/M68k/ |
| H A D | M68kInstrInfo.td | 508 def MxCP_ARI : ComplexPattern<iPTR, 1, "SelectARI">; 510 def MxCP_ARIPI : ComplexPattern<iPTR, 1, "SelectARIPI">; 512 def MxCP_ARIPD : ComplexPattern<iPTR, 1, "SelectARIPD">; 514 def MxCP_ARID : ComplexPattern<iPTR, 2, "SelectARID", 517 def MxCP_ARII : ComplexPattern<iPTR, 3, "SelectARII", 520 def MxCP_AL : ComplexPattern<iPTR, 1, "SelectAL", 523 def MxCP_PCD : ComplexPattern<iPTR, 1, "SelectPCD", 526 def MxCP_PCI : ComplexPattern<iPTR, 2, "SelectPCI", 614 MxOperand jOp, ComplexPattern jPat, 617 MxOperand oOp, ComplexPattern oPat, [all …]
|
| H A D | M68kInstrBits.td | 143 MxOperand MEMOpd, ComplexPattern MEMPat> {
|
| /freebsd/contrib/llvm-project/llvm/utils/TableGen/Common/ |
| H A D | CodeGenTarget.h | 235 class ComplexPattern { 246 ComplexPattern(const Record *R);
|
| H A D | CodeGenTarget.cpp | 343 ComplexPattern::ComplexPattern(const Record *R) { in ComplexPattern() function in ComplexPattern
|
| H A D | DAGISelMatcher.h | 30 class ComplexPattern; variable 710 const ComplexPattern &Pattern; 724 CheckComplexPatMatcher(const ComplexPattern &pattern, unsigned matchnumber, in CheckComplexPatMatcher() 729 const ComplexPattern &getPattern() const { return Pattern; } in getPattern()
|
| H A D | CodeGenDAGPatterns.h | 790 const ComplexPattern * 1122 std::map<const Record *, ComplexPattern, LessRecordByID> ComplexPatterns; 1167 const ComplexPattern &getComplexPattern(const Record *R) const { in getComplexPattern()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVInstrInfoZb.td | 226 def sh1add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<1>", [], [], 6>; 227 def sh2add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<2>", [], [], 6>; 228 def sh3add_op : ComplexPattern<XLenVT, 1, "selectSHXADDOp<3>", [], [], 6>; 237 def sh1add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<1>", [], [], 6>; 238 def sh2add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<2>", [], [], 6>; 239 def sh3add_uw_op : ComplexPattern<XLenVT, 1, "selectSHXADD_UWOp<3>", [], [], 6>; 495 def invLogicImm : ComplexPattern<XLenVT, 1, "selectInvLogicImm", [], [], 0>; 682 defvar pat = !cast<ComplexPattern>("sh"#i#"add_op"); 683 // More complex cases use a ComplexPattern. 708 def zExtImm32 : ComplexPattern<i64, 1, "selectZExtImm32", [], [], 0>; [all …]
|
| H A D | RISCVInstrInfoZicbo.td | 70 def AddrRegImmLsb00000 : ComplexPattern<iPTR, 2, "SelectAddrRegImmLsb00000">;
|
| H A D | RISCVInstrInfo.td | 503 def AddrRegImm : ComplexPattern<iPTR, 2, "SelectAddrRegImm">; 506 : ComplexPattern<iPTR, 3, "SelectAddrRegRegScale<"#N#">">; 508 : ComplexPattern<i64, 3, "SelectAddrRegZextRegScale<"#N#", 32>", 1372 def sexti16 : ComplexPattern<XLenVT, 1, "selectSExtBits<16>">; 1374 def sexti32 : ComplexPattern<i64, 1, "selectSExtBits<32>">; 1382 def zexti32 : ComplexPattern<i64, 1, "selectZExtBits<32>">; 1386 def zexti16 : ComplexPattern<XLenVT, 1, "selectZExtBits<16>">; 1390 def zexti8 : ComplexPattern<XLenVT, 1, "selectZExtBits<8>">; 1485 def shiftMaskXLen : ComplexPattern<XLenVT, 1, "selectShiftMaskXLen", [], [], 0>; 1486 def shiftMask32 : ComplexPattern<i64, 1, "selectShiftMask32", [], [], 0>; [all …]
|
| H A D | RISCVInstrInfoVVLPatterns.td | 727 def SplatPat : ComplexPattern<vAny, 1, "selectVSplat", [], [], 1>; 728 def SplatPat_simm5 : ComplexPattern<vAny, 1, "selectVSplatSimm5", [], [], 3>; 729 def SplatPat_uimm5 : ComplexPattern<vAny, 1, "selectVSplatUimmBits<5>", [], [], 3>; 730 def SplatPat_uimm6 : ComplexPattern<vAny, 1, "selectVSplatUimmBits<6>", [], [], 3>; 732 : ComplexPattern<vAny, 1, "selectVSplatSimm5Plus1", [], [], 3>; 734 : ComplexPattern<vAny, 1, "selectVSplatSimm5Plus1NoDec", [], [], 3>; 736 : ComplexPattern<vAny, 1, "selectVSplatSimm5Plus1NonZero", [], [], 3>; 737 def SplatPat_imm64_neg : ComplexPattern<vAny, 1, "selectVSplatImm64Neg", [], [], 3>; 742 : ComplexPattern<vAny, 1, "selectLow8BitsVSplat", [], [], 2>; 749 def sew8simm5 : ComplexPattern<XLenVT, 1, "selectRVVSimm5<8>", []>; [all …]
|
| /freebsd/contrib/llvm-project/llvm/utils/TableGen/ |
| H A D | DAGISelMatcherEmitter.cpp | 65 std::vector<const ComplexPattern *> ComplexPatterns; 87 MapVector<const ComplexPattern *, unsigned> ComplexPatternUsage; in MatcherTableEmitter() 117 std::vector<std::pair<const ComplexPattern *, unsigned>> ComplexPatternList( in MatcherTableEmitter() 122 for (const auto &ComplexPattern : ComplexPatternList) in MatcherTableEmitter() local 123 ComplexPatterns.push_back(ComplexPattern.first); in MatcherTableEmitter() 202 unsigned getComplexPat(const ComplexPattern &P) { in getComplexPat() 735 const ComplexPattern &Pattern = CCPM->getPattern(); in EmitMatcher() 1178 const ComplexPattern &P = *ComplexPatterns[i]; in EmitPredicateFunctions()
|
| H A D | DAGISelMatcherGen.cpp | 552 if (const ComplexPattern *CP = in EmitMatcherCode() 596 const ComplexPattern *CP = N.getComplexPatternInfo(CGP); in EmitMatcherCode()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Xtensa/ |
| H A D | XtensaOperands.td | 206 def addr_ish1 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH1", [frameindex]>; 207 def addr_ish2 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH2", [frameindex]>; 208 def addr_ish4 : ComplexPattern<iPTR, 2, "selectMemRegAddrISH4", [frameindex]>;
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86InstrFragments.td | 359 def addr : ComplexPattern<iPTR, 5, "selectAddr">; 362 def lea32addr : ComplexPattern<i32, 5, "selectLEAAddr", 366 def lea64_iaddr : ComplexPattern<iAny, 5, "selectLEA64_Addr", 371 def tls32addr : ComplexPattern<i32, 5, "selectTLSADDRAddr", 374 def tls32baseaddr : ComplexPattern<i32, 5, "selectTLSADDRAddr", 377 def lea64addr : ComplexPattern<i64, 5, "selectLEAAddr", 381 def tls64addr : ComplexPattern<i64, 5, "selectTLSADDRAddr", 384 def tls64baseaddr : ComplexPattern<i64, 5, "selectTLSADDRAddr", 388 def vectoraddr : ComplexPattern<iPTR, 5, "selectVectorAddr">; 392 def relocImm : ComplexPattern<iAny, 1, "selectRelocImm",
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | SIInstrInfo.td | 1615 def DS1Addr1Offset : ComplexPattern<iPTR, 2, "SelectDS1Addr1Offset">; 1616 def DS64Bit4ByteAligned : ComplexPattern<iPTR, 3, "SelectDS64Bit4ByteAligned">; 1617 def DS128Bit8ByteAligned : ComplexPattern<iPTR, 3, "SelectDS128Bit8ByteAligned">; 1619 def MOVRELOffset : ComplexPattern<iPTR, 2, "SelectMOVRELOffset">; 1621 def VOP3Mods0 : ComplexPattern<untyped, 4, "SelectVOP3Mods0">; 1624 def VOP3Mods : ComplexPattern<untyped, 2, "SelectVOP3Mods">; 1629 def VOP3ModsNonCanonicalizing : ComplexPattern<untyped, 2, 1632 def VOP3NoMods : ComplexPattern<untyped, 1, "SelectVOP3NoMods">; 1634 def VOP3OMods : ComplexPattern<untyped, 3, "SelectVOP3OMods">; 1636 def VOP3PMods : ComplexPattern<untyped, 2, "SelectVOP3PMods">; [all …]
|
| H A D | VINTERPInstructions.td | 163 list<ComplexPattern> pat> : GCNPat < 178 ValueType dst_type, list<ComplexPattern> high_pat> {
|
| H A D | AMDGPUGISel.td | 16 def sd_vsrc0 : ComplexPattern<i32, 1, "">; 21 def sd_vcsrc : ComplexPattern<i32, 1, "">;
|
| H A D | SMInstructions.td | 865 def SMRDImm : ComplexPattern<iPTR, 2, "SelectSMRDImm">; 866 def SMRDImm32 : ComplexPattern<iPTR, 2, "SelectSMRDImm32">; 867 def SMRDSgpr : ComplexPattern<iPTR, 2, "SelectSMRDSgpr">; 868 def SMRDSgprImm : ComplexPattern<iPTR, 3, "SelectSMRDSgprImm">; 869 def SMRDBufferImm : ComplexPattern<iPTR, 1, "SelectSMRDBufferImm">; 870 def SMRDBufferImm32 : ComplexPattern<iPTR, 1, "SelectSMRDBufferImm32">; 871 def SMRDBufferSgprImm : ComplexPattern<iPTR, 2, "SelectSMRDBufferSgprImm">;
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Target/GlobalISel/ |
| H A D | SelectionDAGCompat.td | 283 // Specifies the GlobalISel equivalents for SelectionDAG's ComplexPattern. 285 class GIComplexPatternEquiv<ComplexPattern seldag> { 286 ComplexPattern SelDAGEquivalent = seldag;
|
| H A D | Target.td | 29 // Defines a matcher for complex operands. This is analogous to ComplexPattern
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/ |
| H A D | WebAssemblyInstrMemory.td | 33 def AddrOps32 : ComplexPattern<i32, 2, "SelectAddrOperands32">; 34 def AddrOps64 : ComplexPattern<i64, 2, "SelectAddrOperands64">;
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | SMEInstrFormats.td | 13 def imm_to_tile8 : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZAB0, 0>", []>; 14 def imm_to_tile16 : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZAH0, 1>", []>; 15 def imm_to_tile32 : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZAS0, 3>", []>; 16 def imm_to_tile64 : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZAD0, 7>", []>; 17 def imm_to_tile128 : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZAQ0, 15>", []>; 18 def imm_to_zt : ComplexPattern<i32, 1, "ImmToReg<AArch64::ZT0, 0>", []>; 20 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>", []>; 23 def tileslice64 : ComplexPattern<i32 , 2, "SelectSMETileSlice<1, 1>", []>; [all …]
|
| H A D | SVEInstrFormats.td | 318 def SVEAddSubImm8Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i8>", []>; 319 def SVEAddSubImm16Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i16>", []>; 320 def SVEAddSubImm32Pat : ComplexPattern<i32, 2, "SelectSVEAddSubImm<MVT::i32>", []>; 321 def SVEAddSubImm64Pat : ComplexPattern<i64, 2, "SelectSVEAddSubImm<MVT::i64>", []>; 323 def SVEAddSubSSatNegImm8Pat : ComplexPattern<i32, 2, "SelectSVEAddSubSSatImm<MVT::i8, true>", []>; 324 def SVEAddSubSSatNegImm16Pat : ComplexPattern<i32, 2, "SelectSVEAddSubSSatImm<MVT::i16, true>", []>; 325 def SVEAddSubSSatNegImm32Pat : ComplexPattern<i32, 2, "SelectSVEAddSubSSatImm<MVT::i32, true>", []>; 326 def SVEAddSubSSatNegImm64Pat : ComplexPattern<i64, 2, "SelectSVEAddSubSSatImm<MVT::i64, true>", []>; 328 def SVEAddSubSSatPosImm8Pat : ComplexPattern<i32, 2, "SelectSVEAddSubSSatImm<MVT::i8, false>", []>; 329 def SVEAddSubSSatPosImm16Pat : ComplexPattern<i32, 2, "SelectSVEAddSubSSatImm<MVT::i16, false>", []… [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | ARMInstrThumb.td | 185 ComplexPattern<i32, 2, "SelectThumbAddrModeRR", []> { 198 ComplexPattern<i32, 2, "SelectThumbAddrModeRRSext", []> { 214 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S1", []> { 222 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S2", []> { 230 ComplexPattern<i32, 2, "SelectThumbAddrModeRI5S4", []> { 242 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S4", []> { 254 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S2", []> { 266 ComplexPattern<i32, 2, "SelectThumbAddrModeImm5S1", []> { 280 ComplexPattern<i32, 2, "SelectThumbAddrModeSP", []> { 291 def AddLikeOrOp : ComplexPattern<i32, 1, "SelectAddLikeOr">;
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/ |
| H A D | CSKYInstrFormatsF1.td | 220 def Mem8SL2 : Operand<iPTR>, ComplexPattern<iPTR, 2, "SelectAddrRegImm8", []> { 226 def FRRS : Operand<iPTR>, ComplexPattern<iPTR, 3, "SelectAddrRegReg", []> {
|