Home
last modified time | relevance | path

Searched refs:SDNode (Results 1 – 25 of 255) sorted by relevance

1234567891011

/llvm-project-15.0.7/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeTypes.h137 SmallVector<SDNode*, 128> Worklist;
179 void NoteDeletion(SDNode *Old, SDNode *New) { in NoteDeletion()
210 SDNode *AnalyzeNewNode(SDNode *N);
338 SDValue PromoteIntRes_SHL(SDNode *N);
344 SDValue PromoteIntRes_SRA(SDNode *N);
345 SDValue PromoteIntRes_SRL(SDNode *N);
360 SDValue PromoteIntRes_ABS(SDNode *N);
400 SDValue PromoteIntOp_FIX(SDNode *N);
487 SDValue ExpandIntOp_BR_CC(SDNode *N);
489 SDValue ExpandIntOp_SETCC(SDNode *N);
[all …]
H A DSelectionDAGPrinter.cpp37 return ((const SDNode *) Node)->getNumValues(); in numEdgeDestLabels()
62 SDNode *TargetNode = *I; in getEdgeTarget()
76 static std::string getNodeIdentifierLabel(const SDNode *Node, in getNodeIdentifierLabel()
103 static std::string getSimpleNodeLabel(const SDNode *Node, in getSimpleNodeLabel()
113 static std::string getNodeAttributes(const SDNode *N, in getNodeAttributes()
205 std::map<const SDNode *, std::string>::const_iterator I = in getGraphAttrs()
233 bool SelectionDAG::setSubgraphColorHelper(SDNode *N, const char *Color, DenseSet<SDNode *> &visited, in setSubgraphColorHelper()
267 DenseSet<SDNode *> visited; in setSubgraphColor()
289 SmallVector<SDNode *, 4> GluedNodes; in getGraphNodeLabel()
290 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) in getGraphNodeLabel()
[all …]
H A DScheduleDAGSDNodes.cpp110 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency()
226 SDNode *Base = Node; in ClusterNeighboringLoads()
239 SDNode *User = *I; in ClusterNeighboringLoads()
268 SmallVector<SDNode*, 4> Loads; in ClusterNeighboringLoads()
287 SDNode *Lead = Loads[0]; in ClusterNeighboringLoads()
293 SDNode *Load = Loads[I]; in ClusterNeighboringLoads()
312 SDNode *Node = &NI; in ClusterNodes()
369 SDNode *N = NI; in BuildSchedUnits()
386 for (SDNode *U : N->uses()) in BuildSchedUnits()
611 SDNode *N = SU->getNode(); in computeLatency()
[all …]
H A DSDNodeDbgValue.h25 class SDNode; variable
42 SDNode *getSDNode() const { in getSDNode()
71 static SDDbgOperand fromNode(SDNode *Node, unsigned ResNo) { in fromNode()
105 SDNode *Node; ///< Valid for expressions.
114 SDDbgOperand(SDNode *N, unsigned R) : kind(SDNODE) { in SDDbgOperand()
145 SDNode **AdditionalDependencies;
194 SmallVector<SDNode *> getSDNodes() const { in getSDNodes()
195 SmallVector<SDNode *> Dependencies; in getSDNodes()
199 for (SDNode *Node : getAdditionalDependencies()) in getSDNodes()
204 ArrayRef<SDNode *> getAdditionalDependencies() const { in getAdditionalDependencies()
[all …]
H A DLegalizeFloatTypes.cpp1375 void DAGTypeLegalizer::ExpandFloatRes_FCEIL(SDNode *N, in ExpandFloatRes_FCEIL()
1393 void DAGTypeLegalizer::ExpandFloatRes_FCOS(SDNode *N, in ExpandFloatRes_FCOS()
1411 void DAGTypeLegalizer::ExpandFloatRes_FEXP(SDNode *N, in ExpandFloatRes_FEXP()
1419 void DAGTypeLegalizer::ExpandFloatRes_FEXP2(SDNode *N, in ExpandFloatRes_FEXP2()
1435 void DAGTypeLegalizer::ExpandFloatRes_FLOG(SDNode *N, in ExpandFloatRes_FLOG()
1443 void DAGTypeLegalizer::ExpandFloatRes_FLOG2(SDNode *N, in ExpandFloatRes_FLOG2()
1537 void DAGTypeLegalizer::ExpandFloatRes_FPOW(SDNode *N, in ExpandFloatRes_FPOW()
1545 void DAGTypeLegalizer::ExpandFloatRes_FPOWI(SDNode *N, in ExpandFloatRes_FPOWI()
1561 void DAGTypeLegalizer::ExpandFloatRes_FREM(SDNode *N, in ExpandFloatRes_FREM()
1569 void DAGTypeLegalizer::ExpandFloatRes_FRINT(SDNode *N, in ExpandFloatRes_FRINT()
[all …]
H A DInstrEmitter.h47 void EmitCopyFromReg(SDNode *Node, unsigned ResNo,
52 void CreateVirtualRegisters(SDNode *Node,
92 void EmitSubregNode(SDNode *Node, DenseMap<SDValue, Register> &VRBaseMap,
99 void EmitCopyToRegClassNode(SDNode *Node,
104 void EmitRegSequence(SDNode *Node, DenseMap<SDValue, Register> &VRBaseMap,
110 static unsigned CountResults(SDNode *Node);
140 void EmitNode(SDNode *Node, bool IsClone, bool IsCloned, in EmitNode()
161 void EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned,
163 void EmitSpecialNode(SDNode *Node, bool IsClone, bool IsCloned,
H A DScheduleDAGFast.cpp210 SDNode *N = SU->getNode(); in CopyAndMoveSuccessors()
670 std::vector<SDNode*> Sequence;
671 DenseMap<SDNode*, SDNode*> GluedMap; // Cache glue to its user
673 void ScheduleNode(SDNode *N);
692 SDNode *GluedOpN = nullptr; in ScheduleNode()
695 SDNode *OpN = Op.getNode(); in ScheduleNode()
710 DenseMap<SDNode*, SDNode*>::iterator DI = GluedMap.find(OpN); in ScheduleNode()
726 static SDNode *findGluedUser(SDNode *N) { in findGluedUser()
735 SmallVector<SDNode*, 8> Glues; in Schedule()
738 SDNode *N = &Node; in Schedule()
[all …]
H A DScheduleDAGSDNodes.h65 static bool isPassiveNode(SDNode *Node) { in isPassiveNode()
86 SUnit *newSUnit(SDNode *N);
107 virtual void computeOperandLatency(SDNode *Def, SDNode *Use,
140 const SDNode *Node;
155 const SDNode *GetNode() const { in GetNode()
178 void ClusterNeighboringLoads(SDNode *Node);
H A DLegalizeVectorOps.cpp88 SDValue UnrollVSETCC(SDNode *Node);
105 SDValue ExpandSEXTINREG(SDNode *Node);
128 SDValue ExpandBSWAP(SDNode *Node);
132 SDValue ExpandVSELECT(SDNode *Node);
133 SDValue ExpandVP_SELECT(SDNode *Node);
134 SDValue ExpandVP_MERGE(SDNode *Node);
135 SDValue ExpandSELECT(SDNode *Node);
137 SDValue ExpandStore(SDNode *N);
138 SDValue ExpandFNEG(SDNode *Node);
1537 SDNode *N = Node; in ExpandFixedPointDiv()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/Hexagon/
H A DHexagonISelDAGToDAG.h82 SDNode *StoreInstrForLoadIntrinsic(MachineSDNode *LoadN, SDNode *IntN);
93 void SelectLoad(SDNode *N);
96 void SelectStore(SDNode *N);
97 void SelectSHL(SDNode *N);
106 void SelectVAlign(SDNode *N);
109 void SelectP2D(SDNode *N);
110 void SelectD2P(SDNode *N);
111 void SelectQ2V(SDNode *N);
112 void SelectV2Q(SDNode *N);
151 int getWeight(SDNode *N);
[all …]
/llvm-project-15.0.7/llvm/lib/Target/NVPTX/
H A DNVPTXISelDAGToDAG.h58 void Select(SDNode *N) override;
62 bool tryLoad(SDNode *N);
63 bool tryLoadVector(SDNode *N);
64 bool tryLDGLDU(SDNode *N);
65 bool tryStore(SDNode *N);
66 bool tryStoreVector(SDNode *N);
67 bool tryLoadParam(SDNode *N);
68 bool tryStoreRetval(SDNode *N);
69 bool tryStoreParam(SDNode *N);
73 bool tryBFE(SDNode *N);
[all …]
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86InstrFragmentsSIMD.td69 def X86pshufb : SDNode<"X86ISD::PSHUFB",
72 def X86psadbw : SDNode<"X86ISD::PSADBW",
82 def X86andnp : SDNode<"X86ISD::ANDNP",
88 def X86pextrb : SDNode<"X86ISD::PEXTRB",
91 def X86pextrw : SDNode<"X86ISD::PEXTRW",
94 def X86pinsrb : SDNode<"X86ISD::PINSRB",
97 def X86pinsrw : SDNode<"X86ISD::PINSRW",
132 def X86vfpext : SDNode<"X86ISD::VFPEXT",
407 def X86Movsd : SDNode<"X86ISD::MOVSD",
411 def X86Movss : SDNode<"X86ISD::MOVSS",
[all …]
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DAMDGPUISelDAGToDAG.h56 static inline SDNode *packConstantV2I16(const SDNode *N, SelectionDAG &DAG,
72 static inline SDNode *packNegConstantV2I16(const SDNode *N, SelectionDAG &DAG) { in packNegConstantV2I16()
104 void Select(SDNode *N) override;
148 SDNode *glueCopyToOp(SDNode *N, SDValue NewChain, SDValue Glue) const;
149 SDNode *glueCopyToM0(SDNode *N, SDValue Val) const;
150 SDNode *glueCopyToM0LDSInit(SDNode *N) const;
252 void SelectAddcSubb(SDNode *N);
256 void SelectMUL_LOHI(SDNode *N);
262 void SelectS_BFE(SDNode *N);
264 void SelectBRCOND(SDNode *N);
[all …]
H A DAMDGPUInstrInfo.td72 def callseq_start : SDNode<"ISD::CALLSEQ_START",
77 def callseq_end : SDNode<"ISD::CALLSEQ_END",
82 def AMDGPUcall : SDNode<"AMDGPUISD::CALL",
88 def AMDGPUtc_return: SDNode<"AMDGPUISD::TC_RETURN",
93 def AMDGPUtrap : SDNode<"AMDGPUISD::TRAP",
98 def AMDGPUconstdata_ptr : SDNode<
251 def AMDGPUstore_mskor : SDNode<"AMDGPUISD::STORE_MSKOR",
260 def AMDGPUround : SDNode<"ISD::FROUND",
266 def AMDGPUbfm : SDNode<"AMDGPUISD::BFM", SDTIntBinOp>;
313 def AMDGPUfdot2_impl : SDNode<"AMDGPUISD::FDOT2",
[all …]
H A DSIISelLowering.h166 SDValue performUCharToFloatCombine(SDNode *N,
168 SDValue performSHLPtrCombine(SDNode *N,
180 SDValue performOrCombine(SDNode *N, DAGCombinerInfo &DCI) const;
201 const SDNode *N0, const SDNode *N1) const;
217 unsigned isCFIntrinsic(const SDNode *Intr) const;
242 bool shouldExpandVectorDynExt(SDNode *N) const;
312 bool isMemOpUniform(const SDNode *N) const;
313 bool isMemOpHasNoClobberedMemOperand(const SDNode *N) const;
427 SDNode *legalizeTargetIndependentNode(SDNode *Node, SelectionDAG &DAG) const;
465 bool isSDNodeSourceOfDivergence(const SDNode *N,
[all …]
H A DAMDGPUISelLowering.h81 SDValue performLoadCombine(SDNode *N, DAGCombinerInfo &DCI) const;
89 SDValue performShlCombine(SDNode *N, DAGCombinerInfo &DCI) const;
90 SDValue performSraCombine(SDNode *N, DAGCombinerInfo &DCI) const;
91 SDValue performSrlCombine(SDNode *N, DAGCombinerInfo &DCI) const;
93 SDValue performMulCombine(SDNode *N, DAGCombinerInfo &DCI) const;
104 SDValue performRcpCombine(SDNode *N, DAGCombinerInfo &DCI) const;
158 static bool allUsesHaveSourceMods(const SDNode *N,
185 bool shouldReduceLoadWidth(SDNode *Load,
199 bool isSDNodeAlwaysUniform(const SDNode *N) const override;
224 void ReplaceNodeResults(SDNode * N,
[all …]
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DSelectionDAGISel.h101 virtual bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const;
107 static bool IsLegalToFold(SDValue N, SDNode *U, SDNode *Root,
223 void ReplaceUses(SDNode *F, SDNode *T) { in ReplaceUses()
229 void ReplaceNode(SDNode *F, SDNode *T) { in ReplaceNode()
284 SDNode *N, unsigned PredNo, in CheckNodePredicateWithOperands()
289 virtual bool CheckComplexPattern(SDNode *Root, SDNode *Parent, SDValue N, in CheckComplexPattern()
319 void Select_UNDEF(SDNode *N);
320 void CannotYetSelect(SDNode *N);
322 void Select_FREEZE(SDNode *N);
327 void Select_STACKMAP(SDNode *N);
[all …]
H A DSelectionDAGNodes.h67 class SDNode; variable
258 using SimpleType = SDNode *;
281 SDNode *User = nullptr;
329 friend class SDNode;
361 using SimpleType = SDNode *;
455 class SDNode : public FoldingSetNode, public ilist_node<SDNode> {
477 friend class SDNode;
735 friend class SDNode;
893 static bool areOnlyUsersOf(ArrayRef<const SDNode *> Nodes, const SDNode *N);
2951 const SDNode *Node;
[all …]
H A DSelectionDAG.h241 SDNode EntryNode;
317 virtual void NodeDeleted(SDNode *N, SDNode *E);
327 std::function<void(SDNode *, SDNode *)> Callback;
1547 SDNode *UpdateNodeOperands(SDNode *N, SDValue Op);
1555 SDNode *UpdateNodeOperands(SDNode *N, ArrayRef<SDValue> Ops);
1579 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1581 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1583 SDNode *SelectNodeTo(SDNode *N, unsigned MachineOpc, EVT VT,
1597 SDNode *MorphNodeTo(SDNode *N, unsigned Opc, SDVTList VTs,
1603 SDNode *mutateStrictFPToFP(SDNode *Node);
[all …]
/llvm-project-15.0.7/llvm/lib/Target/VE/
H A DVVPInstrInfo.td16 // SDNode.
127 class vvp_commutative<SDNode RootOp> :
133 class vvp_fma_commutative<SDNode RootOp> :
140 def vvp_add : SDNode<"VEISD::VVP_ADD", SDTIntBinOpVVP>;
143 def vvp_sub : SDNode<"VEISD::VVP_SUB", SDTIntBinOpVVP>;
145 def vvp_mul : SDNode<"VEISD::VVP_MUL", SDTIntBinOpVVP>;
148 def vvp_sdiv : SDNode<"VEISD::VVP_SDIV", SDTIntBinOpVVP>;
154 def vvp_or : SDNode<"VEISD::VVP_OR", SDTIntBinOpVVP>;
181 def vvp_load : SDNode<"VEISD::VVP_LOAD", SDTLoadVVP,
183 def vvp_store : SDNode<"VEISD::VVP_STORE", SDTStoreVVP,
[all …]
/llvm-project-15.0.7/llvm/lib/Target/SystemZ/
H A DSystemZOperators.td253 def z_pcrel_offset : SDNode<"SystemZISD::PCREL_OFFSET",
264 def z_select_ccmask_1 : SDNode<"SystemZISD::SELECT_CCMASK",
285 def z_loadbswap : SDNode<"SystemZISD::LRV", SDTLoad,
289 def z_loadeswap : SDNode<"SystemZISD::VLER", SDTLoad,
297 def z_vector_insert : SDNode<"ISD::INSERT_VECTOR_ELT",
299 def z_vector_extract : SDNode<"ISD::EXTRACT_VECTOR_ELT",
364 def z_vstrc_cc : SDNode<"SystemZISD::VSTRC_CC",
366 def z_vstrcz_cc : SDNode<"SystemZISD::VSTRCZ_CC",
368 def z_vstrs_cc : SDNode<"SystemZISD::VSTRS_CC",
370 def z_vstrsz_cc : SDNode<"SystemZISD::VSTRSZ_CC",
[all …]
/llvm-project-15.0.7/llvm/include/llvm/Target/
H A DTargetSelectionDAG.td318 class SDNode<string opcode, SDTypeProfile typeprof,
521 def strict_fadd : SDNode<"ISD::STRICT_FADD",
523 def strict_fsub : SDNode<"ISD::STRICT_FSUB",
525 def strict_fmul : SDNode<"ISD::STRICT_FMUL",
527 def strict_fdiv : SDNode<"ISD::STRICT_FDIV",
529 def strict_frem : SDNode<"ISD::STRICT_FREM",
531 def strict_fma : SDNode<"ISD::STRICT_FMA",
771 SDNode Opcode = opc;
908 SDNode ImmNode = imm>
1590 multiclass ternary_atomic_op<SDNode atomic_op> {
[all …]
/llvm-project-15.0.7/llvm/lib/Target/RISCV/
H A DRISCVISelDAGToDAG.h43 void Select(SDNode *Node) override;
74 bool hasAllNBitUsers(SDNode *Node, unsigned Bits) const;
91 void addVectorLoadStoreOperands(SDNode *Node, unsigned SEWImm,
97 void selectVLSEG(SDNode *Node, bool IsMasked, bool IsStrided);
98 void selectVLSEGFF(SDNode *Node, bool IsMasked);
99 void selectVLXSEG(SDNode *Node, bool IsMasked, bool IsOrdered);
100 void selectVSSEG(SDNode *Node, bool IsMasked, bool IsStrided);
101 void selectVSXSEG(SDNode *Node, bool IsMasked, bool IsOrdered);
103 void selectVSETVLI(SDNode *Node);
131 bool doPeepholeSExtW(SDNode *Node);
[all …]
/llvm-project-15.0.7/llvm/lib/Target/M68k/
H A DM68kISelDAGToDAG.cpp184 bool IsProfitableToFold(SDValue N, SDNode *U, SDNode *Root) const override;
200 void Select(SDNode *N) override;
217 std::pair<bool, SDNode *> selectNode(SDNode *Node);
219 bool SelectARI(SDNode *Parent, SDValue N, SDValue &Base);
220 bool SelectARIPI(SDNode *Parent, SDValue N, SDValue &Base);
221 bool SelectARIPD(SDNode *Parent, SDValue N, SDValue &Base);
225 bool SelectAL(SDNode *Parent, SDValue N, SDValue &Sym);
226 bool SelectPCD(SDNode *Parent, SDValue N, SDValue &Imm);
311 SDNode *getGlobalBaseReg();
369 SDNode *M68kDAGToDAGISel::getGlobalBaseReg() { in getGlobalBaseReg()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/AVR/
H A DAVRISelDAGToDAG.cpp40 bool selectIndexedLoad(SDNode *N);
50 void Select(SDNode *N) override;
51 bool trySelect(SDNode *N);
53 template <unsigned NodeType> bool select(SDNode *N);
54 bool selectMultiplication(SDNode *N);
121 bool AVRDAGToDAGISel::selectIndexedLoad(SDNode *N) { in selectIndexedLoad()
159 SDNode *ResNode = in selectIndexedLoad()
371 SDNode *ResNode; in select()
466 SDNode *ResNode = in select()
536 void AVRDAGToDAGISel::Select(SDNode *N) { in Select()
[all …]

1234567891011