reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
434 assert((Div->getOpcode() == Instruction::SDiv || 435 Div->getOpcode() == Instruction::UDiv) && 438 IRBuilder<> Builder(Div); 440 assert(!Div->getType()->isVectorTy() && "Div over vectors not supported"); 441 assert((Div->getType()->getIntegerBitWidth() == 32 || 442 Div->getType()->getIntegerBitWidth() == 64) && 446 if (Div->getOpcode() == Instruction::SDiv) { 448 Value *Quotient = generateSignedDivisionCode(Div->getOperand(0), 449 Div->getOperand(1), Builder); 452 bool IsInsertPoint = Div->getIterator() == Builder.GetInsertPoint(); 453 Div->replaceAllUsesWith(Quotient); 454 Div->dropAllReferences(); 455 Div->eraseFromParent(); 464 Div = BO; 468 Value *Quotient = generateUnsignedDivisionCode(Div->getOperand(0), 469 Div->getOperand(1), 471 Div->replaceAllUsesWith(Quotient); 472 Div->dropAllReferences(); 473 Div->eraseFromParent();