reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1878 assert(RootWeights.count(N) && "Cannot balance non-root node."); 1879 assert(RootWeights[N] != -2 && "This node was RAUW'd!"); 1880 assert(!TopLevel || N->getOpcode() == ISD::ADD); 1883 if (RootWeights[N] != -1) 1884 return SDValue(N, 0); 1886 assert(isOpcodeHandled(N)); 1888 SDValue Op0 = N->getOperand(0); 1889 SDValue Op1 = N->getOperand(1); 1902 SDNode *Op1N = N->getOperand(1).getNode(); // Op1 may have been RAUWd 1909 RootWeights[N] = Weight; 1910 RootHeights[N] = std::max(getHeight(N->getOperand(0).getNode()), 1910 RootHeights[N] = std::max(getHeight(N->getOperand(0).getNode()), 1911 getHeight(N->getOperand(1).getNode())) + 1; 1914 << " Height=" << RootHeights[N] << "): "); 1915 LLVM_DEBUG(N->dump(CurDAG)); 1917 return SDValue(N, 0); 1921 LLVM_DEBUG(N->dump(CurDAG)); 1923 unsigned NOpcode = N->getOpcode(); 1927 Worklist.push_back(SDValue(N, 0)); 1957 if (Child.getNode() != N && RootWeights.count(Child.getNode())) { 1970 return balanceSubTree(N, TopLevel); 2040 LLVM_DEBUG(dbgs() << "--> Current height=" << NodeHeights[SDValue(N, 0)] 2053 SDValue Sum = CurDAG->getNode(ISD::ADD, SDLoc(N), Mul1.Value.getValueType(), 2055 SDValue Const = CurDAG->getConstant(MaxPowerOf2, SDLoc(N), 2057 SDValue New = CurDAG->getNode(ISD::SHL, SDLoc(N), Mul1.Value.getValueType(), 2075 GA.Value.hasOneUse() && N->use_size() < 3) { 2103 RootWeights[N] = CurrentWeight; 2104 RootHeights[N] = NodeHeights[SDValue(N, 0)]; 2104 RootHeights[N] = NodeHeights[SDValue(N, 0)]; 2106 return SDValue(N, 0); 2156 return balanceSubTree(N, TopLevel); 2161 EVT VT = N->getValueType(0); 2179 V1C->getAPIntValue().logBase2(), SDLoc(N), 2182 NewNode = CurDAG->getNode(NOpcode, SDLoc(N), VT, V0, V1); 2214 if (N != NewRoot.getNode()) { 2219 CurDAG->ReplaceAllUsesWith(N, NewRoot.getNode()); 2221 RootWeights[N] = -2;