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

References

tools/clang/lib/CodeGen/CGExprScalar.cpp
 3593   Value *RHS = Ops.RHS;
 3594   if (Ops.LHS->getType() != RHS->getType())
 3595     RHS = Builder.CreateIntCast(RHS, Ops.LHS->getType(), false, "sh_prom");
 3598                       Ops.Ty->hasSignedIntegerRepresentation() &&
 3605         Builder.CreateAnd(RHS, GetWidthMinusOneValue(Ops.LHS, RHS), "shl.mask");
 3607            isa<llvm::IntegerType>(Ops.LHS->getType())) {
 3610     llvm::Value *WidthMinusOne = GetWidthMinusOneValue(Ops.LHS, Ops.RHS);
 3610     llvm::Value *WidthMinusOne = GetWidthMinusOneValue(Ops.LHS, Ops.RHS);
 3611     llvm::Value *ValidExponent = Builder.CreateICmpULE(Ops.RHS, WidthMinusOne);
 3627           (RHS == Ops.RHS) ? WidthMinusOne
 3628                            : GetWidthMinusOneValue(Ops.LHS, RHS);
 3631           Ops.LHS, Builder.CreateSub(PromotedWidthMinusOne, RHS, "shl.zeros",
 3652     EmitBinOpCheck(Checks, Ops);
 3655   return Builder.CreateShl(Ops.LHS, RHS, "shl");