Home
last modified time | relevance | path

Searched refs:PatFrag (Results 1 – 25 of 81) sorted by relevance

1234

/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrFragmentsSIMD.td881 def alignedloadv8f16 : PatFrag<(ops node:$ptr),
885 def alignedloadv4f32 : PatFrag<(ops node:$ptr),
887 def alignedloadv2f64 : PatFrag<(ops node:$ptr),
889 def alignedloadv2i64 : PatFrag<(ops node:$ptr),
891 def alignedloadv4i32 : PatFrag<(ops node:$ptr),
893 def alignedloadv8i16 : PatFrag<(ops node:$ptr),
895 def alignedloadv16i8 : PatFrag<(ops node:$ptr),
980 def X86vzload16 : PatFrag<(ops node:$src),
985 def X86vzload32 : PatFrag<(ops node:$src),
990 def X86vzload64 : PatFrag<(ops node:$src),
[all …]
H A DX86InstrFragments.td568 : PatFrag<(ops node:$A, node:$B),
579 : PatFrag<(ops node:$A),
599 def X86testpat : PatFrag<(ops node:$lhs, node:$rhs),
608 def PrefetchWLevel : PatFrag<(ops), (i32 timm), [{
637 def X86tcret_1reg : PatFrag<(ops node:$ptr, node:$off),
707 def or_flag_nocf : PatFrag<(ops node:$lhs, node:$rhs),
767 def X86fstf32 : PatFrag<(ops node:$val, node:$ptr),
771 def X86fstf64 : PatFrag<(ops node:$val, node:$ptr),
775 def X86fstf80 : PatFrag<(ops node:$val, node:$ptr),
800 def X86fist32 : PatFrag<(ops node:$val, node:$ptr),
[all …]
H A DX86InstrFMA.td37 ValueType VT, X86MemOperand x86memop, PatFrag MemFrag,
57 ValueType VT, X86MemOperand x86memop, PatFrag MemFrag,
77 ValueType VT, X86MemOperand x86memop, PatFrag MemFrag,
102 PatFrag MemFrag128, PatFrag MemFrag256,
334 RegisterClass RC, PatFrag mem_frag> {
392 PatFrag mem_frag, X86FoldableSchedWrite sched> {
468 PatFrag ld_frag128, PatFrag ld_frag256,
599 PatFrag mem_frag> {
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZOperators.td502 def z_ipm : PatFrag<(ops), (z_ipm_1 CC)>;
583 : PatFrag<(ops node:$addr), (load node:$addr),
758 : PatFrag<(ops node:$value, node:$addr),
764 : PatFrag<(ops node:$addr),
800 : PatFrag<(ops node:$addr),
832 : PatFrag<(ops node:$addr),
844 def z_vllezf32 : PatFrag<(ops node:$addr),
854 def z_vllezf64 : PatFrag<(ops node:$addr),
861 def z_vllezlf32 : PatFrag<(ops node:$addr),
914 : PatFrag<(ops node:$src),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Target/
H A DTargetSelectionDAG.td941 : PatFrag<ops, frag, [{}], NOOP_SDNodeXForm>;
946 : PatFrag<(ops), frag, pred, xform>;
1381 def simple_load : PatFrag<(ops node:$ptr),
1733 PatFrag<(ops node:$ptr),
1740 PatFrag<(ops node:$ptr),
1747 PatFrag<(ops node:$ptr),
1753 PatFrag<(ops node:$ptr),
1913 PatFrag<(ops node:$val, node:$ptr),
1920 PatFrag<(ops node:$val, node:$ptr),
1927 PatFrag<(ops node:$val, node:$ptr),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUInstructions.td326 def srl_16 : PatFrag<
331 def hi_i16_elt : PatFrag<
388 def COND_SGT : PatFrag<(ops), (OtherVT SETGT)>;
587 PatFrag<(ops node:$ptr, node:$data),
594 PatFrag<(ops node:$ptr, node:$data),
603 PatFrag<(ops node:$ptr, node:$data),
610 PatFrag<(ops node:$ptr, node:$data),
619 PatFrag<(ops node:$ptr, node:$data),
626 PatFrag<(ops node:$ptr, node:$data),
807 def cvt_rpi_i32_f32 : PatFrag <
[all …]
H A DSIInstrInfo.td193 def "_noret" : PatFrag<
541 def atomic_store_8_glue : PatFrag <
548 def atomic_store_16_glue : PatFrag <
555 def atomic_store_32_glue : PatFrag <
562 def atomic_store_64_glue : PatFrag <
659 def lshr_rev : PatFrag <
664 def ashr_rev : PatFrag <
669 def lshl_rev : PatFrag <
674 def add_ctpop : PatFrag <
679 def xnor : PatFrag <
[all …]
H A DDSInstructions.td749 !cast<PatFrag>(frag#"_local_addrspace")>;
776 def : DSReadPat<inst, vt, !cast<PatFrag>(frag#"_m0")>;
835 def : DSWritePat<inst, vt, !cast<PatFrag>(frag#"_m0")>;
983 !cast<PatFrag>(frag#"_local_"#vt.Size)>;
996 !cast<PatFrag>(frag#"_local_m0_"#vt.Size)>;
1003 !cast<PatFrag>(frag#"_local_"#vt.Size)>;
1010 !cast<PatFrag>(frag#"_region_m0_"#vt.Size),
1022 class DSAtomicCmpXChgSwapped<DS_Pseudo inst, ValueType vt, PatFrag frag,
1039 !cast<PatFrag>(frag#"_local_"#vt.Size)>;
1056 class DSAtomicCmpXChg<DS_Pseudo inst, ValueType vt, PatFrag frag,
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/utils/TableGen/GlobalISel/
H A DPatterns.cpp464 PatFrag::PatFrag(const Record &Def) : Def(Def) { in PatFrag() function in llvm::gi::PatFrag
476 iterator_range<PatFrag::ParamIt> PatFrag::in_params() const { in in_params()
487 iterator_range<PatFrag::ParamIt> PatFrag::out_params() const { in out_params()
491 unsigned PatFrag::num_roots() const { in num_roots()
505 bool PatFrag::checkSemantics() { in checkSemantics()
658 bool PatFrag::buildOperandsTables() { in buildOperandsTables()
715 void PatFrag::dump() const { print(dbgs()); } in dump()
733 if (Param.Kind == PatFrag::PK_Root) in getApplyDefsNeeded()
747 case PatFrag::PK_Imm: in checkSemantics()
761 case PatFrag::PK_Root: in checkSemantics()
[all …]
H A DPatterns.h510 class PatFrag {
539 explicit PatFrag(const Record &Def);
606 PatFragPattern(const PatFrag &PF, StringRef Name) in PatFragPattern()
611 const PatFrag &getPatFrag() const { return PF; } in getPatFrag()
642 const PatFrag &PF;
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrAtomics.td152 PatFrag<(ops node:$addr),
155 PatFrag<(ops node:$addr),
158 PatFrag<(ops node:$addr),
224 class trunc_astore_64<PatFrag kind> :
225 PatFrag<(ops node:$val, node:$addr),
348 multiclass BinRMWPattern<PatFrag rmw_32, PatFrag rmw_64, string inst_32,
370 class zext_bin_rmw_8_32<PatFrag kind> :
373 class zext_bin_rmw_8_64<PatFrag kind> :
374 PatFrag<(ops node:$addr, node:$val),
388 PatFrag<(ops node:$addr, node:$val),
[all …]
H A DWebAssemblyInstrSIMD.td65 PatFrag splat;
281 defvar pat = PatFrag<(ops node:$ptr),
327 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
330 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
333 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
336 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
407 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
410 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
413 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
416 PatFrag<(ops node:$ptr, node:$vec, node:$idx),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfoA.td125 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_monotonic"),
127 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_acquire"),
129 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_release"),
131 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_acq_rel"),
133 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_seq_cst"),
137 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_monotonic"),
139 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_acquire"),
141 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_release"),
143 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_acq_rel"),
145 def : PatGprGpr<!cast<PatFrag>(AtomicOp#"_seq_cst"),
[all …]
H A DRISCVInstrInfoZa.td73 def : Pat<(!cast<PatFrag>(AtomicOp#"_monotonic") (vt GPR:$addr),
77 def : Pat<(!cast<PatFrag>(AtomicOp#"_acquire") (vt GPR:$addr),
81 def : Pat<(!cast<PatFrag>(AtomicOp#"_release") (vt GPR:$addr),
85 def : Pat<(!cast<PatFrag>(AtomicOp#"_acq_rel") (vt GPR:$addr),
89 def : Pat<(!cast<PatFrag>(AtomicOp#"_seq_cst") (vt GPR:$addr),
95 def : Pat<(!cast<PatFrag>(AtomicOp#"_monotonic") (vt GPR:$addr),
99 def : Pat<(!cast<PatFrag>(AtomicOp#"_acquire") (vt GPR:$addr),
103 def : Pat<(!cast<PatFrag>(AtomicOp#"_release") (vt GPR:$addr),
107 def : Pat<(!cast<PatFrag>(AtomicOp#"_acq_rel") (vt GPR:$addr),
111 def : Pat<(!cast<PatFrag>(AtomicOp#"_seq_cst") (vt GPR:$addr),
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonPatterns.td296 class VNot2<PatFrag P, PatFrag Not>
341 PatFrag RxPred, PatFrag RsPred, PatFrag RtPred>
2533 class Storexim_fi_pat<PatFrag Store, PatFrag Value, PatFrag ValueMod,
2591 class Stoream_pat<PatFrag Store, PatFrag Value, PatFrag Addr, PatFrag ValueMod,
2688 class Storexim_abs_pat<PatFrag Store, PatFrag Value, PatFrag ValueMod,
2800 multiclass IMFA_<PatFrag S, PatFrag V, PatFrag O, PatFrag M, InstHexagon I> {
2803 multiclass IFA_<PatFrag S, PatFrag V, PatFrag O, InstHexagon I> {
2871 multiclass IMRA_<PatFrag S, PatFrag V, PatFrag O, PatFrag M, InstHexagon I> {
2874 multiclass IRA_<PatFrag S, PatFrag V, PatFrag O, InstHexagon I> {
3057 multiclass Memopxr_pat<PatFrag Load, PatFrag Store, PatFrag ImmPred,
[all …]
H A DHexagonPatternsHVX.td65 def qtrue: PatFrag<(ops), (HexagonQTRUE)>;
125 PatFrag ImmPred> {
134 PatFrag ImmPred> {
152 PatFrag ImmPred> {
160 PatFrag ImmPred> {
195 multiclass HvxStfi_pat<InstHexagon MI, PatFrag Store, PatFrag Value,
205 multiclass HvxStgi_pat<InstHexagon MI, PatFrag Store, PatFrag Value,
215 multiclass HvxSt_pat<InstHexagon MI, PatFrag Store, PatFrag Value,
216 PatFrag ImmPred> {
431 PatFrag RsPred, PatFrag RtPred = RsPred>
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64InstrAtomics.td32 : PatFrag<(ops node:$ptr), (base node:$ptr)> {
39 : PatFrag<(ops node:$ptr), (base node:$ptr)> {
46 : PatFrag<(ops node:$ptr), (base node:$ptr)> {
164 class releasing_store<PatFrag base>
171 class relaxed_store<PatFrag base>
369 def stxr_1 : PatFrag<(ops node:$val, node:$ptr),
376 def stxr_2 : PatFrag<(ops node:$val, node:$ptr),
383 def stxr_4 : PatFrag<(ops node:$val, node:$ptr),
390 def stxr_8 : PatFrag<(ops node:$val, node:$ptr),
423 def stlxr_1 : PatFrag<(ops node:$val, node:$ptr),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kInstrInfo.td538 def Mxloadi16 : PatFrag<(ops node:$ptr), (i16 (unindexedload node:$ptr)), [{
548 def Mxloadi32 : PatFrag<(ops node:$ptr), (i32 (unindexedload node:$ptr)), [{
558 def Mxloadi8 : PatFrag<(ops node:$ptr), (i8 (load node:$ptr))>;
571 def MxExtLoadi8i1 : PatFrag<(ops node:$ptr), (i8 (extloadi1 node:$ptr))>;
620 MxOperand iOp, PatFrag iPat,
622 PatFrag load> {
656 PatFrag IPat = iPat;
658 PatFrag Load = load;
669 class MxImmOpBundle<int size, MxOperand op, PatFrag pat>
671 PatFrag ImmPat = pat;
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/utils/TableGen/
H A DGlobalISelCombinerEmitter.cpp163 else if (Def.isSubClassOf(PatFrag::ClassName)) in print()
182 else if (Def.isSubClassOf(PatFrag::ClassName)) in print()
1564 const PatFrag *PF = parsePatFrag(Def); in parseInstructionPattern()
1761 std::unique_ptr<PatFrag>
1764 if (!Def->isSubClassOf(PatFrag::ClassName)) in parsePatFragImpl()
1781 auto Result = std::make_unique<PatFrag>(*Def); in parsePatFragImpl()
1837 PatFrag::ParamKind OpKind; in parsePatFragParamList()
1839 OpKind = PatFrag::PK_Imm; in parsePatFragParamList()
1841 OpKind = PatFrag::PK_Root; in parsePatFragParamList()
1844 OpKind = PatFrag::PK_MachineOperand; in parsePatFragParamList()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYInstrFormatsF1.td60 class F_XZ<bits<5> datatype, bits<6> sop, string op, string op_su, PatFrag opnode, RegisterOperand …
72 class F_XZ_TRANS_DS<bits<6> sop, string op, PatFrag opnode>
76 class F_XZ_TRANS_SD<bits<6> sop, string op, PatFrag opnode>
87 multiclass FT_XZ<bits<6> sop, string op, PatFrag opnode> {
105 class F_XYZ<bits<5> datatype, bits<6> sop, string op, string op_su, PatFrag opnode, RegisterOperand…
110 multiclass FT_XYZ<bits<6> sop, string op, PatFrag opnode> {
117 class F_ACCUM_XYZ<bits<5> datatype, bits<6> sop, string op, string op_su, PatFrag opnode, RegisterO…
123 multiclass FT_ACCUM_XYZ<bits<6> sop, string op, PatFrag opnode> {
H A DCSKYInstrInfo.td495 class BinOpFrag<dag res> : PatFrag<(ops node:$LHS, node:$RHS), res>;
496 class UnOpFrag<dag res> : PatFrag<(ops node:$Src), res>;
1114 multiclass LdrPat<PatFrag LoadOp, Instruction Inst, ValueType Type> {
1146 multiclass StrPat<PatFrag StoreOp, ValueType Type, Instruction Inst> {
1195 multiclass BTF32Pat0<PatFrag cond0, PatFrag cond1, ImmLeaf imm_ty, Instruction inst> {
1221 multiclass BTF32Pat1<PatFrag cond0, PatFrag cond1, Instruction cmp,
1314 multiclass INCDECPat<PatFrag cond0, PatFrag cond1, Instruction cmp> {
1363 multiclass MOVTF32Pat0<PatFrag cond0, PatFrag cond1, ImmLeaf imm_ty, Instruction inst> {
1401 multiclass INCPat<PatFrag cond0, PatFrag cond1, Instruction cmp, Instruction inc0, Instruction inc1…
1417 multiclass DECPat<PatFrag cond0, PatFrag cond1, Instruction cmp, Instruction dec0, Instruction dec1…
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsInstrCompiler.td15 def shiftMask_32 : PatFrag<(ops node:$lhs), (and node:$lhs, imm), [{
19 def shiftMask_64 : PatFrag<(ops node:$src0), (and node:$src0, imm), [{
H A DMipsMSAInstrInfo.td110 PatFrag<(ops node:$lhs, node:$rhs),
159 PatFrag<(ops node:$lhs, node:$rhs),
183 def vsplati8 : PatFrag<(ops node:$e0),
192 def vsplati16 : PatFrag<(ops node:$e0),
197 def vsplati32 : PatFrag<(ops node:$e0),
210 def vsplati64 : PatFrag<(ops node:$e0),
213 def vsplati64_splat_d : PatFrag<(ops node:$e0),
222 def vsplatf32 : PatFrag<(ops node:$e0),
225 def vsplatf64 : PatFrag<(ops node:$e0),
3831 def vsplati8imm7 : PatFrag<(ops node:$wt),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCInstrAltivec.td33 def vpkuhum_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
37 def vpkuwum_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
41 def vpkudum_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
73 def vmrglb_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
77 def vmrglh_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
81 def vmrglw_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
85 def vmrghb_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
89 def vmrghh_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
93 def vmrghw_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
153 def vmrgew_shuffle : PatFrag<(ops node:$lhs, node:$rhs),
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchInstrInfo.td502 def fma_nsz : PatFrag<(ops node:$fj, node:$fk, node:$fa),
1068 : PatFrag<(ops node:$val, node:$count),
1071 : PatFrag<(ops node:$val, node:$count),
1074 def mul_const_oneuse : PatFrag<(ops node:$A, node:$B),
1401 class BccPat<PatFrag CondOp, LAInst Inst>
1412 class BccSwapPat<PatFrag CondOp, LAInst InstBcc>
1720 class RegRegLdPat<PatFrag LoadOp, LAInst Inst, ValueType vt>
1811 class release_seqcst_store<PatFrag base>
1817 class unordered_monotonic_store<PatFrag base>
1893 def : Pat<(!cast<PatFrag>(Op#"_acquire") GPR:$addr, GPR:$incr),
[all …]

1234