parent
f43a94e75e
commit
740be89f51
|
@ -10606,7 +10606,7 @@ SDValue ARMTargetLowering::LowerDivRem(SDValue Op, SelectionDAG &DAG) const {
|
|||
assert(Subtarget->isTargetAEABI() && "Register-based DivRem lowering only");
|
||||
unsigned Opcode = Op->getOpcode();
|
||||
assert((Opcode == ISD::SDIVREM || Opcode == ISD::UDIVREM) &&
|
||||
"Invalid opcode for Div/Rem lowering");
|
||||
"Invalid opcode for Div/Rem lowering");
|
||||
bool isSigned = (Opcode == ISD::SDIVREM);
|
||||
EVT VT = Op->getValueType(0);
|
||||
Type *Ty = VT.getTypeForEVT(*DAG.getContext());
|
||||
|
@ -10614,10 +10614,10 @@ SDValue ARMTargetLowering::LowerDivRem(SDValue Op, SelectionDAG &DAG) const {
|
|||
RTLIB::Libcall LC;
|
||||
switch (VT.getSimpleVT().SimpleTy) {
|
||||
default: llvm_unreachable("Unexpected request for libcall!");
|
||||
case MVT::i8: LC= isSigned ? RTLIB::SDIVREM_I8 : RTLIB::UDIVREM_I8; break;
|
||||
case MVT::i16: LC= isSigned ? RTLIB::SDIVREM_I16 : RTLIB::UDIVREM_I16; break;
|
||||
case MVT::i32: LC= isSigned ? RTLIB::SDIVREM_I32 : RTLIB::UDIVREM_I32; break;
|
||||
case MVT::i64: LC= isSigned ? RTLIB::SDIVREM_I64 : RTLIB::UDIVREM_I64; break;
|
||||
case MVT::i8: LC = isSigned ? RTLIB::SDIVREM_I8 : RTLIB::UDIVREM_I8; break;
|
||||
case MVT::i16: LC = isSigned ? RTLIB::SDIVREM_I16 : RTLIB::UDIVREM_I16; break;
|
||||
case MVT::i32: LC = isSigned ? RTLIB::SDIVREM_I32 : RTLIB::UDIVREM_I32; break;
|
||||
case MVT::i64: LC = isSigned ? RTLIB::SDIVREM_I64 : RTLIB::UDIVREM_I64; break;
|
||||
}
|
||||
|
||||
SDValue InChain = DAG.getEntryNode();
|
||||
|
|
Loading…
Reference in New Issue