Lines Matching refs:CurDAG
199 // Transforms a subgraph in CurDAG if the following pattern is found:
206 static bool SelectMadd(SDNode* ADDENode, SelectionDAG* CurDAG) {
242 SDValue Chain = CurDAG->getEntryNode();
248 SDValue MAdd = CurDAG->getNode(MultOpc, dl,
256 SDValue CopyFromLo = CurDAG->getCopyFromReg(Chain, dl, Mips::LO, MVT::i32,
258 SDValue CopyFromHi = CurDAG->getCopyFromReg(CopyFromLo.getValue(1), dl,
264 CurDAG->ReplaceAllUsesOfValueWith(SDValue(ADDCNode, 0), CopyFromLo);
267 CurDAG->ReplaceAllUsesOfValueWith(SDValue(ADDENode, 0), CopyFromHi);
273 // Transforms a subgraph in CurDAG if the following pattern is found:
280 static bool SelectMsub(SDNode* SUBENode, SelectionDAG* CurDAG) {
316 SDValue Chain = CurDAG->getEntryNode();
322 SDValue MSub = CurDAG->getNode(MultOpc, dl,
330 SDValue CopyFromLo = CurDAG->getCopyFromReg(Chain, dl, Mips::LO, MVT::i32,
332 SDValue CopyFromHi = CurDAG->getCopyFromReg(CopyFromLo.getValue(1), dl,
338 CurDAG->ReplaceAllUsesOfValueWith(SDValue(SUBCNode, 0), CopyFromLo);
341 CurDAG->ReplaceAllUsesOfValueWith(SDValue(SUBENode, 0), CopyFromHi);