Lines Matching refs:SDValue

26 static SDValue emitMemMem(SelectionDAG &DAG, SDLoc DL, unsigned Sequence,  in emitMemMem()
27 unsigned Loop, SDValue Chain, SDValue Dst, in emitMemMem()
28 SDValue Src, uint64_t Size) { in emitMemMem()
49 SDValue SystemZSelectionDAGInfo::
50 EmitTargetCodeForMemcpy(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForMemcpy()
51 SDValue Dst, SDValue Src, SDValue Size, unsigned Align, in EmitTargetCodeForMemcpy()
56 return SDValue(); in EmitTargetCodeForMemcpy()
61 return SDValue(); in EmitTargetCodeForMemcpy()
67 static SDValue memsetStore(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in memsetStore()
68 SDValue Dst, uint64_t ByteVal, uint64_t Size, in memsetStore()
80 SDValue SystemZSelectionDAGInfo::
81 EmitTargetCodeForMemset(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForMemset()
82 SDValue Dst, SDValue Byte, SDValue Size, in EmitTargetCodeForMemset()
88 return SDValue(); in EmitTargetCodeForMemset()
93 return SDValue(); in EmitTargetCodeForMemset()
105 SDValue Chain1 = memsetStore(DAG, DL, Chain, Dst, ByteVal, Size1, in EmitTargetCodeForMemset()
112 SDValue Chain2 = memsetStore(DAG, DL, Chain, Dst, ByteVal, Size2, in EmitTargetCodeForMemset()
119 SDValue Chain1 = DAG.getStore(Chain, DL, Byte, Dst, DstPtrInfo, in EmitTargetCodeForMemset()
123 SDValue Dst2 = DAG.getNode(ISD::ADD, DL, PtrVT, Dst, in EmitTargetCodeForMemset()
125 SDValue Chain2 = DAG.getStore(Chain, DL, Byte, Dst2, in EmitTargetCodeForMemset()
143 SDValue DstPlus1 = DAG.getNode(ISD::ADD, DL, PtrVT, Dst, in EmitTargetCodeForMemset()
148 return SDValue(); in EmitTargetCodeForMemset()
153 static SDValue emitCLC(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in emitCLC()
154 SDValue Src1, SDValue Src2, uint64_t Size) { in emitCLC()
177 static SDValue addIPMSequence(SDLoc DL, SDValue Glue, SelectionDAG &DAG) { in addIPMSequence()
178 SDValue IPM = DAG.getNode(SystemZISD::IPM, DL, MVT::i32, Glue); in addIPMSequence()
179 SDValue SRL = DAG.getNode(ISD::SRL, DL, MVT::i32, IPM, in addIPMSequence()
181 SDValue ROTL = DAG.getNode(ISD::ROTL, DL, MVT::i32, SRL, in addIPMSequence()
186 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
187 EmitTargetCodeForMemcmp(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForMemcmp()
188 SDValue Src1, SDValue Src2, SDValue Size, in EmitTargetCodeForMemcmp()
195 SDValue Glue = Chain.getValue(1); in EmitTargetCodeForMemcmp()
198 return std::make_pair(SDValue(), SDValue()); in EmitTargetCodeForMemcmp()
201 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
202 EmitTargetCodeForMemchr(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForMemchr()
203 SDValue Src, SDValue Char, SDValue Length, in EmitTargetCodeForMemchr()
212 SDValue Limit = DAG.getNode(ISD::ADD, DL, PtrVT, Src, Length); in EmitTargetCodeForMemchr()
213 SDValue End = DAG.getNode(SystemZISD::SEARCH_STRING, DL, VTs, Chain, in EmitTargetCodeForMemchr()
216 SDValue Glue = End.getValue(2); in EmitTargetCodeForMemchr()
220 SDValue Ops[] = {End, DAG.getConstant(0, DL, PtrVT), in EmitTargetCodeForMemchr()
229 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
230 EmitTargetCodeForStrcpy(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForStrcpy()
231 SDValue Dest, SDValue Src, in EmitTargetCodeForStrcpy()
235 SDValue EndDest = DAG.getNode(SystemZISD::STPCPY, DL, VTs, Chain, Dest, Src, in EmitTargetCodeForStrcpy()
240 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
241 EmitTargetCodeForStrcmp(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForStrcmp()
242 SDValue Src1, SDValue Src2, in EmitTargetCodeForStrcmp()
246 SDValue Unused = DAG.getNode(SystemZISD::STRCMP, DL, VTs, Chain, Src1, Src2, in EmitTargetCodeForStrcmp()
249 SDValue Glue = Chain.getValue(2); in EmitTargetCodeForStrcmp()
258 static std::pair<SDValue, SDValue> getBoundedStrlen(SelectionDAG &DAG, SDLoc DL, in getBoundedStrlen()
259 SDValue Chain, SDValue Src, in getBoundedStrlen()
260 SDValue Limit) { in getBoundedStrlen()
263 SDValue End = DAG.getNode(SystemZISD::SEARCH_STRING, DL, VTs, Chain, in getBoundedStrlen()
266 SDValue Len = DAG.getNode(ISD::SUB, DL, PtrVT, End, Src); in getBoundedStrlen()
270 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
271 EmitTargetCodeForStrlen(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForStrlen()
272 SDValue Src, MachinePointerInfo SrcPtrInfo) const { in EmitTargetCodeForStrlen()
277 std::pair<SDValue, SDValue> SystemZSelectionDAGInfo::
278 EmitTargetCodeForStrnlen(SelectionDAG &DAG, SDLoc DL, SDValue Chain, in EmitTargetCodeForStrnlen()
279 SDValue Src, SDValue MaxLength, in EmitTargetCodeForStrnlen()
283 SDValue Limit = DAG.getNode(ISD::ADD, DL, PtrVT, Src, MaxLength); in EmitTargetCodeForStrnlen()