Lines Matching defs:ArgValue
801 Value *CodeGenFunction::EmitVAStartEnd(Value *ArgValue, bool IsStart) {
803 return Builder.CreateCall(CGM.getIntrinsic(inst, {ArgValue->getType()}),
804 ArgValue);
1817 Value *ArgValue = EmitScalarExpr(E->getArg(1));
1819 llvm::Type *ArgType = ArgValue->getType();
1833 Value *IsZero = Builder.CreateICmpEQ(ArgValue, ArgZero);
1842 Value *ZeroCount = Builder.CreateCall(F, {ArgValue, Builder.getTrue()});
1850 Value *ZeroCount = Builder.CreateCall(F, {ArgValue, Builder.getTrue()});
2005 Value *ArgValue = EmitScalarExpr(E);
2007 return ArgValue;
2011 ArgValue, llvm::Constant::getNullValue(ArgValue->getType()));
2017 return ArgValue;
2020 static Value *EmitAbs(CodeGenFunction &CGF, Value *ArgValue, bool HasNSW) {
2022 Intrinsic::abs, ArgValue,
2028 Value *ArgValue = CGF.EmitScalarExpr(E->getArg(0));
2031 if (const auto *VCI = dyn_cast<llvm::ConstantInt>(ArgValue)) {
2033 return EmitAbs(CGF, ArgValue, true);
2038 Constant *Zero = Constant::getNullValue(ArgValue->getType());
2040 Intrinsic::ssub_with_overflow, Zero, ArgValue);
2051 {ArgValue});
2055 Value *CmpResult = CGF.Builder.CreateICmpSLT(ArgValue, Zero, "abscond");
2056 return CGF.Builder.CreateSelect(CmpResult, Result, ArgValue, "abs");
3207 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3209 llvm::Type *ArgType = ArgValue->getType();
3214 Value *IsNeg = Builder.CreateICmpSLT(ArgValue, Zero, "isneg");
3215 Value *Inverse = Builder.CreateNot(ArgValue, "not");
3216 Value *Tmp = Builder.CreateSelect(IsNeg, Inverse, ArgValue);
3231 Value *ArgValue =
3235 llvm::Type *ArgType = ArgValue->getType();
3241 Value *Result = Builder.CreateCall(F, {ArgValue, ZeroUndef});
3249 Value *IsZero = Builder.CreateICmpEQ(ArgValue, Zero, "iszero");
3263 Value *ArgValue =
3267 llvm::Type *ArgType = ArgValue->getType();
3273 Value *Result = Builder.CreateCall(F, {ArgValue, ZeroUndef});
3281 Value *IsZero = Builder.CreateICmpEQ(ArgValue, Zero, "iszero");
3291 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3293 llvm::Type *ArgType = ArgValue->getType();
3298 Builder.CreateAdd(Builder.CreateCall(F, {ArgValue, Builder.getTrue()}),
3301 Value *IsZero = Builder.CreateICmpEQ(ArgValue, Zero, "iszero");
3312 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3314 llvm::Type *ArgType = ArgValue->getType();
3318 Value *Tmp = Builder.CreateCall(F, ArgValue);
3328 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3330 llvm::Type *ArgType = ArgValue->getType();
3334 Value *Result = Builder.CreateCall(F, {ArgValue, Builder.getFalse()});
3347 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3349 llvm::Type *ArgType = ArgValue->getType();
3353 Value *Result = Builder.CreateCall(F, ArgValue);
3366 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3367 llvm::Type *ArgType = ArgValue->getType();
3374 return RValue::get(ArgValue);
3378 Builder.CreateCall(FnExpect, {ArgValue, ExpectedValue}, "expval");
3382 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3383 llvm::Type *ArgType = ArgValue->getType();
3400 return RValue::get(ArgValue);
3405 FnExpect, {ArgValue, ExpectedValue, Confidence}, "expval");
3430 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3432 Builder.CreateCall(FnAssume, ArgValue);
3480 Value *ArgValue = EmitScalarExpr(E->getArg(0));
3483 Builder.CreateArithmeticFence(ArgValue, ConvertType(ArgType)));
3484 return RValue::get(ArgValue);
3542 Value *ArgValue = EmitScalarExpr(Arg);
3547 ArgValue = Builder.CreateBitCast(ArgValue, ConvertType(ArgType));
3551 Value *Result = Builder.CreateCall(F, ArgValue);
6163 Value *ArgValue = EmitScalarOrConstFoldImmArg(ICEArguments, i, E);
6167 if (PTy != ArgValue->getType()) {
6171 ArgValue->getType()->getPointerAddressSpace()) {
6172 ArgValue = Builder.CreateAddrSpaceCast(
6173 ArgValue, llvm::PointerType::get(getLLVMContext(),
6181 ArgValue = Builder.CreateIntrinsic(Intrinsic::x86_cast_vector_to_tile,
6182 {ArgValue->getType()}, {ArgValue});
6184 ArgValue = Builder.CreateBitCast(ArgValue, PTy);
6187 Args.push_back(ArgValue);
8531 llvm::Value *ArgValue = CGF.EmitScalarExpr(E->getArg(1));
8534 ArgValue = Builder.CreateZExt(ArgValue, RegisterType);
8535 return Builder.CreateCall(F, { Metadata, ArgValue });
8539 // Have VoidPtrTy ArgValue but want to return an i32/i64.
8540 ArgValue = Builder.CreatePtrToInt(ArgValue, RegisterType);
8541 return Builder.CreateCall(F, { Metadata, ArgValue });
8544 return Builder.CreateCall(F, { Metadata, ArgValue });
11449 llvm::Value *ArgValue = EmitScalarExpr(E->getArg(1));
11451 return Builder.CreateCall(F, { Metadata, ArgValue });
11579 Value *ArgValue = EmitScalarExpr(E->getArg(0));
11580 llvm::Type *ArgType = ArgValue->getType();
11583 Value *Result = Builder.CreateCall(F, ArgValue);
17993 Value *ArgValue = EmitScalarExpr(E->getArg(0));
17994 llvm::Type *ArgType = ArgValue->getType();
17996 return Builder.CreateCall(F, {ArgValue}, "popcntb");
20100 auto *ArgValue = CGF.EmitScalarExpr(E->getArg(i));
20102 if (PTy != ArgValue->getType())
20103 ArgValue = CGF.Builder.CreateBitCast(ArgValue, PTy);
20104 Args.push_back(ArgValue);