Lines Matching refs:SDNode

69 SUnit *ScheduleDAGSDNodes::newSUnit(SDNode *N) {  in newSUnit()
111 static void CheckForPhysRegDependency(SDNode *Def, SDNode *User, unsigned Op, in CheckForPhysRegDependency()
141 static void CloneNodeWithValues(SDNode *N, SelectionDAG *DAG, ArrayRef<EVT> VTs, in CloneNodeWithValues()
162 static bool AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) { in AddGlue()
163 SDNode *GlueDestNode = Glue.getNode(); in AddGlue()
187 static void RemoveUnusedGlue(SDNode *N, SelectionDAG *DAG) { in RemoveUnusedGlue()
201 void ScheduleDAGSDNodes::ClusterNeighboringLoads(SDNode *Node) { in ClusterNeighboringLoads()
202 SDNode *Chain = nullptr; in ClusterNeighboringLoads()
211 SmallPtrSet<SDNode*, 16> Visited; in ClusterNeighboringLoads()
213 DenseMap<long long, SDNode*> O2SMap; // Map from offset to SDNode. in ClusterNeighboringLoads()
215 SDNode *Base = Node; in ClusterNeighboringLoads()
219 for (SDNode::use_iterator I = Chain->use_begin(), E = Chain->use_end(); in ClusterNeighboringLoads()
221 SDNode *User = *I; in ClusterNeighboringLoads()
248 SmallVector<SDNode*, 4> Loads; in ClusterNeighboringLoads()
251 SDNode *BaseLoad = O2SMap[BaseOff]; in ClusterNeighboringLoads()
255 SDNode *Load = O2SMap[Offset]; in ClusterNeighboringLoads()
267 SDNode *Lead = Loads[0]; in ClusterNeighboringLoads()
273 SDNode *Load = Loads[I]; in ClusterNeighboringLoads()
291 for (SDNode &NI : DAG->allnodes()) { in ClusterNodes()
292 SDNode *Node = &NI; in ClusterNodes()
309 for (SDNode &NI : DAG->allnodes()) { in BuildSchedUnits()
322 SmallVector<SDNode*, 64> Worklist; in BuildSchedUnits()
323 SmallPtrSet<SDNode*, 32> Visited; in BuildSchedUnits()
329 SDNode *NI = Worklist.pop_back_val(); in BuildSchedUnits()
349 SDNode *N = NI; in BuildSchedUnits()
366 for (SDNode::use_iterator UI = N->use_begin(), E = N->use_end(); in BuildSchedUnits()
406 for (const SDNode *SUNode = SU->getNode(); SUNode; in BuildSchedUnits()
410 SDNode *SrcN = SUNode->getOperand(2).getNode(); in BuildSchedUnits()
427 SDNode *MainNode = SU->getNode(); in AddSchedEdges()
443 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) { in AddSchedEdges()
455 SDNode *OpN = N->getOperand(i).getNode(); in AddSchedEdges()
591 SDNode *N = SU->getNode(); in computeLatency()
619 for (SDNode *N = SU->getNode(); N; N = N->getGluedNode()) in computeLatency()
624 void ScheduleDAGSDNodes::computeOperandLatency(SDNode *Def, SDNode *Use, in computeOperandLatency()
663 SmallVector<SDNode *, 4> GluedNodes; in dumpNode()
664 for (SDNode *N = SU.getNode()->getGluedNode(); N; N = N->getGluedNode()) in dumpNode()
714 ProcessSDDbgValues(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter, in ProcessSDDbgValues()
742 ProcessSourceNode(SDNode *N, SelectionDAG *DAG, InstrEmitter &Emitter, in ProcessSourceNode()
849 SmallVector<SDNode *, 4> GluedNodes; in EmitSchedule()
850 for (SDNode *N = SU->getNode()->getGluedNode(); N; N = N->getGluedNode()) in EmitSchedule()
853 SDNode *N = GluedNodes.back(); in EmitSchedule()