reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3661 Value *RHS = Ops.RHS; 3662 if (Ops.LHS->getType() != RHS->getType()) 3663 RHS = Builder.CreateIntCast(RHS, Ops.LHS->getType(), false, "sh_prom"); 3668 Builder.CreateAnd(RHS, GetWidthMinusOneValue(Ops.LHS, RHS), "shr.mask"); 3670 isa<llvm::IntegerType>(Ops.LHS->getType())) { 3673 Builder.CreateICmpULE(RHS, GetWidthMinusOneValue(Ops.LHS, RHS)); 3674 EmitBinOpCheck(std::make_pair(Valid, SanitizerKind::ShiftExponent), Ops); 3677 if (Ops.Ty->hasUnsignedIntegerRepresentation()) 3678 return Builder.CreateLShr(Ops.LHS, RHS, "shr"); 3679 return Builder.CreateAShr(Ops.LHS, RHS, "shr");