Lines Matching refs:UDiv
64 /// code generated, e.g. at the urem instruction. This will generate a udiv in
65 /// the process, and Builder's insert point will be pointing at the udiv (if
71 // ; %quotient = udiv i32 %dividend, %divisor
78 if (Instruction *UDiv = dyn_cast<Instruction>(Quotient))
79 Builder.SetInsertPoint(UDiv);
86 /// code generated, e.g. at the sdiv instruction. This will generate a udiv in
87 /// the process, and Builder's insert point will be pointing at the udiv (if
102 // ; %q_mag = udiv i32 %u_dvnd, %u_dvsr
116 if (Instruction *UDiv = dyn_cast<Instruction>(Q_Mag))
117 Builder.SetInsertPoint(UDiv);
124 /// the caller wants code generated, e.g. at the udiv instruction.
180 "udiv-end");
182 "udiv-loop-exit", F, End);
184 "udiv-do-while", F, End);
186 "udiv-preheader", F, End);
188 "udiv-bb1", F, End);
327 /// the generated code. This currently generates code using the udiv expansion,
330 /// scalar division (due to udiv's limitation), but future work is removing this
350 // If we didn't actually generate a udiv instruction, we're done
366 // Expand the udiv
367 if (BinaryOperator *UDiv = dyn_cast<BinaryOperator>(Builder.GetInsertPoint())) {
368 assert(UDiv->getOpcode() == Instruction::UDiv && "Non-udiv in expansion?");
369 expandDivision(UDiv);
386 Div->getOpcode() == Instruction::UDiv) &&
396 // Lower the code to unsigned division, and reset Div to point to the udiv.
403 // If we didn't actually generate a udiv instruction, we're done
405 if (!BO || BO->getOpcode() != Instruction::UDiv)
483 Div->getOpcode() == Instruction::UDiv) &&