Lines Matching refs:Chain

27                           unsigned Loop, SDValue Chain, SDValue Dst,
42 return DAG.getNode(Loop, DL, MVT::Other, Chain, Dst, Src,
45 return DAG.getNode(Sequence, DL, MVT::Other, Chain, Dst, Src,
50 EmitTargetCodeForMemcpy(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
60 Chain, Dst, Src, CSize->getZExtValue());
65 // Chain, Dst, ByteVal and Size. These cases are expected to use
67 static SDValue memsetStore(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
74 return DAG.getStore(Chain, DL,
81 EmitTargetCodeForMemset(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
105 SDValue Chain1 = memsetStore(DAG, DL, Chain, Dst, ByteVal, Size1,
112 SDValue Chain2 = memsetStore(DAG, DL, Chain, Dst, ByteVal, Size2,
119 SDValue Chain1 = DAG.getStore(Chain, DL, Byte, Dst, DstPtrInfo,
125 SDValue Chain2 = DAG.getStore(Chain, DL, Byte, Dst2,
137 Chain, Dst, Dst, Bytes);
141 Chain = DAG.getStore(Chain, DL, Byte, Dst, DstPtrInfo,
146 Chain, DstPlus1, Dst, Bytes - 1);
153 static SDValue emitCLC(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
166 return DAG.getNode(SystemZISD::CLC_LOOP, DL, VTs, Chain, Src1, Src2,
169 return DAG.getNode(SystemZISD::CLC, DL, VTs, Chain, Src1, Src2,
187 EmitTargetCodeForMemcmp(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
194 Chain = emitCLC(DAG, DL, Chain, Src1, Src2, Bytes);
195 SDValue Glue = Chain.getValue(1);
196 return std::make_pair(addIPMSequence(DL, Glue, DAG), Chain);
202 EmitTargetCodeForMemchr(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
213 SDValue End = DAG.getNode(SystemZISD::SEARCH_STRING, DL, VTs, Chain,
215 Chain = End.getValue(1);
226 return std::make_pair(End, Chain);
230 EmitTargetCodeForStrcpy(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
235 SDValue EndDest = DAG.getNode(SystemZISD::STPCPY, DL, VTs, Chain, Dest, Src,
241 EmitTargetCodeForStrcmp(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
246 SDValue Unused = DAG.getNode(SystemZISD::STRCMP, DL, VTs, Chain, Src1, Src2,
248 Chain = Unused.getValue(1);
249 SDValue Glue = Chain.getValue(2);
250 return std::make_pair(addIPMSequence(DL, Glue, DAG), Chain);
259 SDValue Chain, SDValue Src,
263 SDValue End = DAG.getNode(SystemZISD::SEARCH_STRING, DL, VTs, Chain,
265 Chain = End.getValue(1);
267 return std::make_pair(Len, Chain);
271 EmitTargetCodeForStrlen(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
274 return getBoundedStrlen(DAG, DL, Chain, Src, DAG.getConstant(0, DL, PtrVT));
278 EmitTargetCodeForStrnlen(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
284 return getBoundedStrlen(DAG, DL, Chain, Src, Limit);