reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/GlobalISel/LegalizerHelper.cpp
 3161         MI, KShiftAmt->getOperand(1).getCImm()->getValue(), HalfTy, ShiftAmtTy);
 3169   Register InL = MRI.createGenericVirtualRegister(HalfTy);
 3170   Register InH = MRI.createGenericVirtualRegister(HalfTy);
 3184     auto LoS = MIRBuilder.buildShl(HalfTy, InL, Amt);
 3186     auto LoOr = MIRBuilder.buildLShr(HalfTy, InL, AmtLack);
 3187     auto HiOr = MIRBuilder.buildShl(HalfTy, InH, Amt);
 3188     auto HiS = MIRBuilder.buildOr(HalfTy, LoOr, HiOr);
 3191     auto LoL = MIRBuilder.buildConstant(HalfTy, 0);         // Lo part is zero.
 3192     auto HiL = MIRBuilder.buildShl(HalfTy, InL, AmtExcess); // Hi from Lo part.
 3194     auto Lo = MIRBuilder.buildSelect(HalfTy, IsShort, LoS, LoL);
 3196         HalfTy, IsZero, InH, MIRBuilder.buildSelect(HalfTy, IsShort, HiS, HiL));
 3196         HalfTy, IsZero, InH, MIRBuilder.buildSelect(HalfTy, IsShort, HiS, HiL));
 3205     auto HiS = MIRBuilder.buildInstr(MI.getOpcode(), {HalfTy}, {InH, Amt});
 3207     auto LoOr = MIRBuilder.buildLShr(HalfTy, InL, Amt);
 3208     auto HiOr = MIRBuilder.buildShl(HalfTy, InH, AmtLack);
 3209     auto LoS = MIRBuilder.buildOr(HalfTy, LoOr, HiOr);
 3214       HiL = MIRBuilder.buildConstant(HalfTy, 0);            // Hi part is zero.
 3217       HiL = MIRBuilder.buildAShr(HalfTy, InH, ShiftAmt);    // Sign of Hi part.
 3219     auto LoL = MIRBuilder.buildInstr(MI.getOpcode(), {HalfTy},
 3223         HalfTy, IsZero, InL, MIRBuilder.buildSelect(HalfTy, IsShort, LoS, LoL));
 3223         HalfTy, IsZero, InL, MIRBuilder.buildSelect(HalfTy, IsShort, LoS, LoL));
 3225     auto Hi = MIRBuilder.buildSelect(HalfTy, IsShort, HiS, HiL);