Lines Matching refs:SD
2034 static SDValue createStoreLR(unsigned Opc, SelectionDAG &DAG, StoreSDNode *SD,
2036 SDValue Ptr = SD->getBasePtr(), Value = SD->getValue();
2037 EVT MemVT = SD->getMemoryVT(), BasePtrVT = Ptr.getValueType();
2038 SDLoc DL(SD);
2047 SD->getMemOperand());
2051 static SDValue lowerUnalignedIntStore(StoreSDNode *SD, SelectionDAG &DAG,
2053 SDValue Value = SD->getValue(), Chain = SD->getChain();
2062 if ((VT == MVT::i32) || SD->isTruncatingStore()) {
2063 SDValue SWL = createStoreLR(MipsISD::SWL, DAG, SD, Chain,
2065 return createStoreLR(MipsISD::SWR, DAG, SD, SWL, IsLittle ? 0 : 3);
2075 SD, Chain, IsLittle ? 7 : 0);
2076 return createStoreLR(MipsISD::SDR, DAG, SD, SDL, IsLittle ? 0 : 7);
2080 static SDValue lowerFP_TO_SINT_STORE(StoreSDNode *SD, SelectionDAG &DAG) {
2081 SDValue Val = SD->getValue();
2090 return DAG.getStore(SD->getChain(), SDLoc(SD), Tr, SD->getBasePtr(),
2091 SD->getPointerInfo(), SD->isVolatile(),
2092 SD->isNonTemporal(), SD->getAlignment());
2096 StoreSDNode *SD = cast<StoreSDNode>(Op);
2097 EVT MemVT = SD->getMemoryVT();
2100 if ((SD->getAlignment() < MemVT.getSizeInBits() / 8) &&
2102 return lowerUnalignedIntStore(SD, DAG, Subtarget->isLittle());
2104 return lowerFP_TO_SINT_STORE(SD, DAG);