Lines Matching refs:SDNode

68 SUnit *ScheduleDAGSDNodes::newSUnit(SDNode *N) {  in newSUnit()
110 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency()
140 static void CloneNodeWithValues(SDNode *N, SelectionDAG *DAG, ArrayRef<EVT> VTs, in CloneNodeWithValues()
163 static bool AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) { in AddGlue()
164 SDNode *GlueDestNode = Glue.getNode(); in AddGlue()
188 static void RemoveUnusedGlue(SDNode *N, SelectionDAG *DAG) { in RemoveUnusedGlue()
202 void ScheduleDAGSDNodes::ClusterNeighboringLoads(SDNode *Node) { in ClusterNeighboringLoads()
203 SDNode *Chain = nullptr; in ClusterNeighboringLoads()
212 SmallPtrSet<SDNode*, 16> Visited; in ClusterNeighboringLoads()
214 DenseMap<long long, SDNode*> O2SMap; // Map from offset to SDNode. in ClusterNeighboringLoads()
216 SDNode *Base = Node; in ClusterNeighboringLoads()
220 for (SDNode::use_iterator I = Chain->use_begin(), E = Chain->use_end(); in ClusterNeighboringLoads()
222 SDNode *User = *I; in ClusterNeighboringLoads()
249 SmallVector<SDNode*, 4> Loads; in ClusterNeighboringLoads()
252 SDNode *BaseLoad = O2SMap[BaseOff]; in ClusterNeighboringLoads()
256 SDNode *Load = O2SMap[Offset]; in ClusterNeighboringLoads()
268 SDNode *Lead = Loads[0]; in ClusterNeighboringLoads()
274 SDNode *Load = Loads[I]; in ClusterNeighboringLoads()
292 for (SDNode &NI : DAG->allnodes()) { in ClusterNodes()
293 SDNode *Node = &NI; in ClusterNodes()
310 for (SDNode &NI : DAG->allnodes()) { in BuildSchedUnits()
323 SmallVector<SDNode*, 64> Worklist; in BuildSchedUnits()
324 SmallPtrSet<SDNode*, 32> Visited; in BuildSchedUnits()
330 SDNode *NI = Worklist.pop_back_val(); in BuildSchedUnits()
350 SDNode *N = NI; in BuildSchedUnits()
367 for (SDNode::use_iterator UI = N->use_begin(), E = N->use_end(); in BuildSchedUnits()
407 for (const SDNode *SUNode = SU->getNode(); SUNode; in BuildSchedUnits()
411 SDNode *SrcN = SUNode->getOperand(2).getNode(); in BuildSchedUnits()
428 SDNode *MainNode = SU->getNode(); in AddSchedEdges()
444 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) { in AddSchedEdges()
456 SDNode *OpN = N->getOperand(i).getNode(); in AddSchedEdges()
592 SDNode *N = SU->getNode(); in computeLatency()
620 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) in computeLatency()
625 void ScheduleDAGSDNodes::computeOperandLatency(SDNode *Def, SDNode *Use, in computeOperandLatency()
661 SmallVector<SDNode *, 4> GluedNodes; in dumpNode()
662 for (SDNode *N = SU->getNode()->getGluedNode(); N; N = N->getGluedNode()) in dumpNode()
701 ProcessSDDbgValues(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter, in ProcessSDDbgValues()
731 ProcessSourceNode(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter, in ProcessSourceNode()
833 SmallVector<SDNode *, 4> GluedNodes; in EmitSchedule()
834 for (SDNode *N = SU->getNode()->getGluedNode(); N; N = N->getGluedNode()) in EmitSchedule()
837 SDNode *N = GluedNodes.back(); in EmitSchedule()