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

References

tools/clang/lib/CodeGen/CGExprScalar.cpp
   98     auto *RHSCI = dyn_cast<llvm::ConstantInt>(RHS);
  116       if (auto *CI = dyn_cast<llvm::ConstantInt>(RHS))
  124       if (auto *CFP = dyn_cast<llvm::ConstantFP>(RHS))
  716         return Builder.CreateMul(Ops.LHS, Ops.RHS, "mul");
  719           return Builder.CreateNSWMul(Ops.LHS, Ops.RHS, "mul");
  723           return Builder.CreateNSWMul(Ops.LHS, Ops.RHS, "mul");
  734       Value *V = Builder.CreateFMul(Ops.LHS, Ops.RHS, "mul");
  737     return Builder.CreateMul(Ops.LHS, Ops.RHS, "mul");
  755     return Builder.CreateAnd(Ops.LHS, Ops.RHS, "and");
  758     return Builder.CreateXor(Ops.LHS, Ops.RHS, "xor");
  761     return Builder.CreateOr(Ops.LHS, Ops.RHS, "or");
 1548     DynamicData.push_back(Info.RHS);
 1573     DynamicData.push_back(Info.RHS);
 2321   BinOp.RHS = llvm::ConstantInt::get(InVal->getType(), 1, false);
 2595   BinOp.RHS = Op;
 2596   BinOp.LHS = llvm::Constant::getNullValue(BinOp.RHS->getType());
 2816   Result.RHS = Visit(E->getRHS());
 2836   OpInfo.RHS = Visit(E->getRHS());
 2880             EmitScalarConversion(OpInfo.RHS, E->getRHS()->getType(), LHSTy,
 2967     Checks.push_back(std::make_pair(Builder.CreateICmpNE(Ops.RHS, Zero),
 2983     llvm::Value *RHSCmp = Builder.CreateICmpNE(Ops.RHS, NegOne);
 3006       llvm::Value *NonZero = Builder.CreateFCmpUNE(Ops.RHS, Zero);
 3013     llvm::Value *Val = Builder.CreateFDiv(Ops.LHS, Ops.RHS, "div");
 3030     return Builder.CreateUDiv(Ops.LHS, Ops.RHS, "div");
 3032     return Builder.CreateSDiv(Ops.LHS, Ops.RHS, "div");
 3047     return Builder.CreateURem(Ops.LHS, Ops.RHS, "rem");
 3049     return Builder.CreateSRem(Ops.LHS, Ops.RHS, "rem");
 3088   Value *resultAndOverflow = Builder.CreateCall(intrinsic, {Ops.LHS, Ops.RHS});
 3131   llvm::Value *rhs = Builder.CreateSExt(Ops.RHS, CGF.Int64Ty);
 3166   Value *index = op.RHS;
 3329       return buildFMulAdd(LHSBinOp, op.RHS, CGF, Builder, false, isSub);
 3331   if (auto *RHSBinOp = dyn_cast<llvm::BinaryOperator>(op.RHS)) {
 3342       op.RHS->getType()->isPointerTy())
 3348       return Builder.CreateAdd(op.LHS, op.RHS, "add");
 3351         return Builder.CreateNSWAdd(op.LHS, op.RHS, "add");
 3355         return Builder.CreateNSWAdd(op.LHS, op.RHS, "add");
 3370     Value *V = Builder.CreateFAdd(op.LHS, op.RHS, "add");
 3377   return Builder.CreateAdd(op.LHS, op.RHS, "add");
 3396   Value *RHS = op.RHS;
 3493         return Builder.CreateSub(op.LHS, op.RHS, "sub");
 3496           return Builder.CreateNSWSub(op.LHS, op.RHS, "sub");
 3500           return Builder.CreateNSWSub(op.LHS, op.RHS, "sub");
 3514       Value *V = Builder.CreateFSub(op.LHS, op.RHS, "sub");
 3521     return Builder.CreateSub(op.LHS, op.RHS, "sub");
 3526   if (!op.RHS->getType()->isPointerTy())
 3535     = Builder.CreatePtrToInt(op.RHS, CGF.PtrDiffTy, "sub.ptr.rhs.cast");
 3593   Value *RHS = 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
 3661   Value *RHS = Ops.RHS;
 3743     Value *RHS = BOInfo.RHS;