reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1847 SDLoc dl(N); 1854 return matchAddressBase(N, AM); 1866 if (ConstantSDNode *Cst = dyn_cast<ConstantSDNode>(N)) 1872 switch (N.getOpcode()) { 1876 if (const auto *ESNode = dyn_cast<MCSymbolSDNode>(N.getOperand(0))) { 1884 uint64_t Val = cast<ConstantSDNode>(N)->getSExtValue(); 1892 if (!matchWrapper(N, AM)) 1897 if (!matchLoadInAddress(cast<LoadSDNode>(N), AM)) 1906 AM.Base_FrameIndex = cast<FrameIndexSDNode>(N)->getIndex(); 1915 if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N.getOperand(1))) { 1923 SDValue ShVal = N.getOperand(0); 1948 assert(N.getSimpleValueType().getSizeInBits() <= 64 && 1951 SDValue And = N.getOperand(0); 1958 if (!isa<ConstantSDNode>(N.getOperand(1)) || 1961 uint64_t Mask = And.getConstantOperandVal(1) >> N.getConstantOperandVal(1); 1965 if (!foldMaskAndShiftToScale(*CurDAG, N, Mask, N, X, AM)) 1965 if (!foldMaskAndShiftToScale(*CurDAG, N, Mask, N, X, AM)) 1973 if (N.getResNo() != 0) break; 1981 if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N.getOperand(1))) 1986 SDValue MulVal = N.getOperand(0); 1999 Reg = N.getOperand(0); 2001 Reg = N.getOperand(0); 2020 HandleSDNode Handle(N); 2024 if (matchAddressRecursively(N.getOperand(0), AM, Depth+1)) { 2025 N = Handle.getValue(); 2029 N = Handle.getValue(); 2037 SDValue RHS = N.getOperand(1); 2076 if (!matchAdd(N, AM, Depth)) 2087 if (CurDAG->haveNoCommonBitsSet(N.getOperand(0), N.getOperand(1)) && 2087 if (CurDAG->haveNoCommonBitsSet(N.getOperand(0), N.getOperand(1)) && 2088 !matchAdd(N, AM, Depth)) 2101 assert(N.getSimpleValueType().getSizeInBits() <= 64 && 2104 if (!isa<ConstantSDNode>(N.getOperand(1))) 2107 if (N.getOperand(0).getOpcode() == ISD::SRL) { 2108 SDValue Shift = N.getOperand(0); 2111 uint64_t Mask = N.getConstantOperandVal(1); 2114 if (!foldMaskAndShiftToExtract(*CurDAG, N, Mask, Shift, X, AM)) 2118 if (!foldMaskAndShiftToScale(*CurDAG, N, Mask, Shift, X, AM)) 2122 if (!foldMaskedShiftToBEXTR(*CurDAG, N, Mask, Shift, X, AM, *Subtarget)) 2128 if (!foldMaskedShiftToScaledMask(*CurDAG, N, AM)) 2138 if (N.getOperand(0).getOpcode() != ISD::SHL || !N.getOperand(0).hasOneUse()) 2138 if (N.getOperand(0).getOpcode() != ISD::SHL || !N.getOperand(0).hasOneUse()) 2142 SDValue Shl = N.getOperand(0); 2155 MVT VT = N.getSimpleValueType(); 2156 SDLoc DL(N); 2164 insertDAGNode(*CurDAG, N, Zext); 2165 insertDAGNode(*CurDAG, N, NewShl); 2166 CurDAG->ReplaceAllUsesWith(N, NewShl); 2167 CurDAG->RemoveDeadNode(N.getNode()); 2172 return matchAddressBase(N, AM);