Lines Matching defs:SU

24 bool PPCDispatchGroupSBHazardRecognizer::isLoadAfterStore(SUnit *SU) {
26 if (isBCTRAfterSet(SU))
29 const MCInstrDesc *MCID = DAG->getInstrDesc(SU);
36 // SU is a load; for any predecessors in this dispatch group, that are stores,
38 for (unsigned i = 0, ie = (unsigned) SU->Preds.size(); i != ie; ++i) {
39 const MCInstrDesc *PredMCID = DAG->getInstrDesc(SU->Preds[i].getSUnit());
43 if (!SU->Preds[i].isNormalMemory() && !SU->Preds[i].isBarrier())
47 if (SU->Preds[i].getSUnit() == CurGroup[j])
54 bool PPCDispatchGroupSBHazardRecognizer::isBCTRAfterSet(SUnit *SU) {
55 const MCInstrDesc *MCID = DAG->getInstrDesc(SU);
62 // SU is a branch; for any predecessors in this dispatch group, with which we
64 for (unsigned i = 0, ie = (unsigned) SU->Preds.size(); i != ie; ++i) {
65 const MCInstrDesc *PredMCID = DAG->getInstrDesc(SU->Preds[i].getSUnit());
69 if (SU->Preds[i].isCtrl())
73 if (SU->Preds[i].getSUnit() == CurGroup[j])
139 PPCDispatchGroupSBHazardRecognizer::getHazardType(SUnit *SU, int Stalls) {
140 if (Stalls == 0 && isLoadAfterStore(SU))
143 return ScoreboardHazardRecognizer::getHazardType(SU, Stalls);
146 bool PPCDispatchGroupSBHazardRecognizer::ShouldPreferAnother(SUnit *SU) {
147 const MCInstrDesc *MCID = DAG->getInstrDesc(SU);
152 return ScoreboardHazardRecognizer::ShouldPreferAnother(SU);
155 unsigned PPCDispatchGroupSBHazardRecognizer::PreEmitNoops(SUnit *SU) {
159 if (isLoadAfterStore(SU) && CurSlots < 6) {
171 return ScoreboardHazardRecognizer::PreEmitNoops(SU);
174 void PPCDispatchGroupSBHazardRecognizer::EmitInstruction(SUnit *SU) {
175 const MCInstrDesc *MCID = DAG->getInstrDesc(SU);
182 LLVM_DEBUG(DAG->dumpNode(*SU));
195 CurGroup.push_back(SU);
202 return ScoreboardHazardRecognizer::EmitInstruction(SU);
325 getHazardType(SUnit *SU, int Stalls) {
328 MachineInstr *MI = SU->getInstr();
385 void PPCHazardRecognizer970::EmitInstruction(SUnit *SU) {
386 MachineInstr *MI = SU->getInstr();