Lines Matching refs:getArg
103 assert(E->getArg(0)->getType()->isPointerType()); in MakeBinaryAtomicValue()
105 E->getArg(0)->getType()->getPointeeType())); in MakeBinaryAtomicValue()
106 assert(CGF.getContext().hasSameUnqualifiedType(T, E->getArg(1)->getType())); in MakeBinaryAtomicValue()
108 llvm::Value *DestPtr = CGF.EmitScalarExpr(E->getArg(0)); in MakeBinaryAtomicValue()
118 Args[1] = CGF.EmitScalarExpr(E->getArg(1)); in MakeBinaryAtomicValue()
128 Value *Val = CGF.EmitScalarExpr(E->getArg(0)); in EmitNontemporalStore()
129 Value *Address = CGF.EmitScalarExpr(E->getArg(1)); in EmitNontemporalStore()
132 Val = CGF.EmitToMemory(Val, E->getArg(0)->getType()); in EmitNontemporalStore()
135 LValue LV = CGF.MakeNaturalAlignAddrLValue(BC, E->getArg(0)->getType()); in EmitNontemporalStore()
142 Value *Address = CGF.EmitScalarExpr(E->getArg(0)); in EmitNontemporalLoad()
164 assert(E->getArg(0)->getType()->isPointerType()); in EmitBinaryAtomicPost()
166 E->getArg(0)->getType()->getPointeeType())); in EmitBinaryAtomicPost()
167 assert(CGF.getContext().hasSameUnqualifiedType(T, E->getArg(1)->getType())); in EmitBinaryAtomicPost()
169 llvm::Value *DestPtr = CGF.EmitScalarExpr(E->getArg(0)); in EmitBinaryAtomicPost()
178 Args[1] = CGF.EmitScalarExpr(E->getArg(1)); in EmitBinaryAtomicPost()
209 QualType T = ReturnBool ? E->getArg(1)->getType() : E->getType(); in MakeAtomicCmpXchgValue()
210 llvm::Value *DestPtr = CGF.EmitScalarExpr(E->getArg(0)); in MakeAtomicCmpXchgValue()
219 Args[1] = CGF.EmitScalarExpr(E->getArg(1)); in MakeAtomicCmpXchgValue()
222 Args[2] = EmitToInt(CGF, CGF.EmitScalarExpr(E->getArg(2)), T, IntType); in MakeAtomicCmpXchgValue()
253 assert(E->getArg(0)->getType()->isPointerType()); in EmitAtomicCmpXchgForMSIntrin()
255 E->getType(), E->getArg(0)->getType()->getPointeeType())); in EmitAtomicCmpXchgForMSIntrin()
257 E->getArg(1)->getType())); in EmitAtomicCmpXchgForMSIntrin()
259 E->getArg(2)->getType())); in EmitAtomicCmpXchgForMSIntrin()
261 auto *Destination = CGF.EmitScalarExpr(E->getArg(0)); in EmitAtomicCmpXchgForMSIntrin()
262 auto *Comparand = CGF.EmitScalarExpr(E->getArg(2)); in EmitAtomicCmpXchgForMSIntrin()
263 auto *Exchange = CGF.EmitScalarExpr(E->getArg(1)); in EmitAtomicCmpXchgForMSIntrin()
279 assert(E->getArg(0)->getType()->isPointerType()); in EmitAtomicIncrementValue()
284 CGF.EmitScalarExpr(E->getArg(0)), in EmitAtomicIncrementValue()
292 assert(E->getArg(0)->getType()->isPointerType()); in EmitAtomicDecrementValue()
297 CGF.EmitScalarExpr(E->getArg(0)), in EmitAtomicDecrementValue()
308 llvm::Value *Src0 = CGF.EmitScalarExpr(E->getArg(0)); in emitUnaryBuiltin()
318 llvm::Value *Src0 = CGF.EmitScalarExpr(E->getArg(0)); in emitBinaryBuiltin()
319 llvm::Value *Src1 = CGF.EmitScalarExpr(E->getArg(1)); in emitBinaryBuiltin()
329 llvm::Value *Src0 = CGF.EmitScalarExpr(E->getArg(0)); in emitTernaryBuiltin()
330 llvm::Value *Src1 = CGF.EmitScalarExpr(E->getArg(1)); in emitTernaryBuiltin()
331 llvm::Value *Src2 = CGF.EmitScalarExpr(E->getArg(2)); in emitTernaryBuiltin()
341 llvm::Value *Src0 = CGF.EmitScalarExpr(E->getArg(0)); in emitFPIntBuiltin()
342 llvm::Value *Src1 = CGF.EmitScalarExpr(E->getArg(1)); in emitFPIntBuiltin()
655 CGF.getContext().getTypeSize(E->getArg(1)->getType())); in EmitX86BitTestIntrinsic()
684 Value *BitBase = CGF.EmitScalarExpr(E->getArg(0)); in EmitBitTestIntrinsic()
685 Value *BitPos = CGF.EmitScalarExpr(E->getArg(1)); in EmitBitTestIntrinsic()
801 CGF.EmitScalarExpr(E->getArg(0)), CGF.Int8PtrTy); in EmitMSVCRTSetJmp()
853 Value *ArgValue = EmitScalarExpr(E->getArg(1)); in EmitMSVCBuiltinExpr()
857 EmitScalarExpr(E->getArg(0))->getType()->getPointerElementType(); in EmitMSVCBuiltinExpr()
876 Address IndexAddress = EmitPointerWithAlignment(E->getArg(0)); in EmitMSVCBuiltinExpr()
1006 CallSite CS = Builder.CreateCall(IA, EmitScalarExpr(E->getArg(0))); in EmitMSVCBuiltinExpr()
1166 Address BufAddr = EmitPointerWithAlignment(E.getArg(0)); in emitBuiltinOSLogFormat()
1459 llvm::Value *Src = EmitScalarExpr(E->getArg(0)); in emitRotate()
1460 llvm::Value *ShiftAmt = EmitScalarExpr(E->getArg(1)); in emitRotate()
1586 Value *Arg1 = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1587 Value *Arg2 = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
1687 ? EmitScalarExpr(E->getArg(0)) in EmitBuiltinExpr()
1688 : EmitVAListRef(E->getArg(0)).getPointer(), in EmitBuiltinExpr()
1691 Value *DstPtr = EmitVAListRef(E->getArg(0)).getPointer(); in EmitBuiltinExpr()
1692 Value *SrcPtr = EmitVAListRef(E->getArg(1)).getPointer(); in EmitBuiltinExpr()
1706 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1716 ComplexPairTy ComplexVal = EmitComplexExpr(E->getArg(0)); in EmitBuiltinExpr()
1733 ComplexPairTy ComplexVal = EmitComplexExpr(E->getArg(0)); in EmitBuiltinExpr()
1738 Value *Func = EmitScalarExpr(E->getArg(1)->IgnoreImpCasts()); in EmitBuiltinExpr()
1739 CharUnits Arg0Align = EmitPointerWithAlignment(E->getArg(0)).getAlignment(); in EmitBuiltinExpr()
1741 const Expr *Arg0 = E->getArg(0)->IgnoreImpCasts(); in EmitBuiltinExpr()
1755 ComplexPairTy ComplexVal = EmitComplexExpr(E->getArg(0)); in EmitBuiltinExpr()
1763 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1783 Value *ArgValue = EmitCheckedArgForBuiltin(E->getArg(0), BCK_CTZPassedZero); in EmitBuiltinExpr()
1800 Value *ArgValue = EmitCheckedArgForBuiltin(E->getArg(0), BCK_CLZPassedZero); in EmitBuiltinExpr()
1817 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1838 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1854 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1872 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1888 return RValue::get(EmitScalarExpr(E->getArg(0))); in EmitBuiltinExpr()
1891 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1894 Value *ExpectedValue = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
1907 const Expr *Ptr = E->getArg(0); in EmitBuiltinExpr()
1910 (E->getNumArgs() > 2) ? EmitScalarExpr(E->getArg(2)) : nullptr; in EmitBuiltinExpr()
1912 Value *AlignmentValue = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
1922 if (E->getArg(0)->HasSideEffects(getContext())) in EmitBuiltinExpr()
1925 Value *ArgValue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1969 const Expr *Arg = E->getArg(0); in EmitBuiltinExpr()
1984 E->getArg(1)->EvaluateKnownConstInt(getContext()).getZExtValue(); in EmitBuiltinExpr()
1989 return RValue::get(emitBuiltinObjectSize(E->getArg(0), Type, ResType, in EmitBuiltinExpr()
1993 Value *Locality, *RW, *Address = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
1995 RW = (E->getNumArgs() > 1) ? EmitScalarExpr(E->getArg(1)) : in EmitBuiltinExpr()
1997 Locality = (E->getNumArgs() > 2) ? EmitScalarExpr(E->getArg(2)) : in EmitBuiltinExpr()
2008 Value *Begin = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2009 Value *End = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2029 Value *Base = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2030 Value *Exponent = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2044 Value *LHS = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2045 Value *RHS = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2072 Value *V = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2088 Value *V = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2100 Value *Arg = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2117 Value *V = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2124 getContext().getFloatTypeSemantics(E->getArg(0)->getType())); in EmitBuiltinExpr()
2134 Value *V = EmitScalarExpr(E->getArg(5)); in EmitBuiltinExpr()
2135 llvm::Type *Ty = ConvertType(E->getArg(5)->getType()); in EmitBuiltinExpr()
2142 Builder.CreatePHI(ConvertType(E->getArg(0)->getType()), 4, in EmitBuiltinExpr()
2149 Value *ZeroLiteral = EmitScalarExpr(E->getArg(4)); in EmitBuiltinExpr()
2157 Value *NanLiteral = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2168 Value *InfLiteral = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2176 getContext().getFloatTypeSemantics(E->getArg(5)->getType())); in EmitBuiltinExpr()
2181 Builder.CreateSelect(IsNormal, EmitScalarExpr(E->getArg(2)), in EmitBuiltinExpr()
2182 EmitScalarExpr(E->getArg(3))); in EmitBuiltinExpr()
2194 Value *Size = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2207 Value *Size = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2208 Value *AlignmentInBitsValue = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2220 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2221 Value *SizeVal = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2222 EmitNonNullArgCheck(RValue::get(Dest.getPointer()), E->getArg(0)->getType(), in EmitBuiltinExpr()
2223 E->getArg(0)->getExprLoc(), FD, 0); in EmitBuiltinExpr()
2229 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2230 Address Src = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
2231 Value *SizeVal = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
2232 EmitNonNullArgCheck(RValue::get(Dest.getPointer()), E->getArg(0)->getType(), in EmitBuiltinExpr()
2233 E->getArg(0)->getExprLoc(), FD, 0); in EmitBuiltinExpr()
2234 EmitNonNullArgCheck(RValue::get(Src.getPointer()), E->getArg(1)->getType(), in EmitBuiltinExpr()
2235 E->getArg(1)->getExprLoc(), FD, 1); in EmitBuiltinExpr()
2247 if (!E->getArg(2)->EvaluateAsInt(SizeResult, CGM.getContext()) || in EmitBuiltinExpr()
2248 !E->getArg(3)->EvaluateAsInt(DstSizeResult, CGM.getContext())) in EmitBuiltinExpr()
2254 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2255 Address Src = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
2262 Address DestAddr = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2263 Address SrcAddr = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
2264 Value *SizeVal = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
2273 if (!E->getArg(2)->EvaluateAsInt(SizeResult, CGM.getContext()) || in EmitBuiltinExpr()
2274 !E->getArg(3)->EvaluateAsInt(DstSizeResult, CGM.getContext())) in EmitBuiltinExpr()
2280 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2281 Address Src = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
2289 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2290 Address Src = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
2291 Value *SizeVal = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
2292 EmitNonNullArgCheck(RValue::get(Dest.getPointer()), E->getArg(0)->getType(), in EmitBuiltinExpr()
2293 E->getArg(0)->getExprLoc(), FD, 0); in EmitBuiltinExpr()
2294 EmitNonNullArgCheck(RValue::get(Src.getPointer()), E->getArg(1)->getType(), in EmitBuiltinExpr()
2295 E->getArg(1)->getExprLoc(), FD, 1); in EmitBuiltinExpr()
2301 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2302 Value *ByteVal = Builder.CreateTrunc(EmitScalarExpr(E->getArg(1)), in EmitBuiltinExpr()
2304 Value *SizeVal = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
2305 EmitNonNullArgCheck(RValue::get(Dest.getPointer()), E->getArg(0)->getType(), in EmitBuiltinExpr()
2306 E->getArg(0)->getExprLoc(), FD, 0); in EmitBuiltinExpr()
2313 if (!E->getArg(2)->EvaluateAsInt(SizeResult, CGM.getContext()) || in EmitBuiltinExpr()
2314 !E->getArg(3)->EvaluateAsInt(DstSizeResult, CGM.getContext())) in EmitBuiltinExpr()
2320 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2321 Value *ByteVal = Builder.CreateTrunc(EmitScalarExpr(E->getArg(1)), in EmitBuiltinExpr()
2335 Value *Dst = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2336 Value *Src = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2337 Value *Size = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
2400 Value *Depth = ConstantEmitter(*this).emitAbstract(E->getArg(0), in EmitBuiltinExpr()
2410 Value *Depth = ConstantEmitter(*this).emitAbstract(E->getArg(0), in EmitBuiltinExpr()
2416 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2421 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2436 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2442 Value *Int = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2443 Value *Ptr = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2475 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2490 Address Buf = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2511 Value *Buf = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2526 const Expr *Arg = E->getArg(0); in EmitBuiltinExpr()
2675 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2676 QualType ElTy = E->getArg(0)->getType()->getPointeeType(); in EmitBuiltinExpr()
2711 Args.add(RValue::get(EmitScalarExpr(E->getArg(0))), in EmitBuiltinExpr()
2714 Args.add(RValue::get(EmitScalarExpr(E->getArg(1))), in EmitBuiltinExpr()
2730 QualType PtrTy = E->getArg(0)->IgnoreImpCasts()->getType(); in EmitBuiltinExpr()
2734 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2738 Value *Order = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2813 QualType PtrTy = E->getArg(0)->IgnoreImpCasts()->getType(); in EmitBuiltinExpr()
2817 Address Ptr = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
2821 Value *Order = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
2879 Value *Order = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2942 Builder.CreateZExt(EmitSignBit(*this, EmitScalarExpr(E->getArg(0))), in EmitBuiltinExpr()
2968 llvm::Value *AnnVal = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
2974 const Expr *AnnotationStrExpr = E->getArg(1)->IgnoreParenCasts(); in EmitBuiltinExpr()
3007 llvm::Value *X = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3008 llvm::Value *Y = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3009 llvm::Value *Carryin = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
3010 Address CarryOutPtr = EmitPointerWithAlignment(E->getArg(3)); in EmitBuiltinExpr()
3048 const clang::Expr *LeftArg = E->getArg(0); in EmitBuiltinExpr()
3049 const clang::Expr *RightArg = E->getArg(1); in EmitBuiltinExpr()
3050 const clang::Expr *ResultArg = E->getArg(2); in EmitBuiltinExpr()
3156 llvm::Value *X = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3157 llvm::Value *Y = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3158 Address SumOutPtr = EmitPointerWithAlignment(E->getArg(2)); in EmitBuiltinExpr()
3204 return RValue::get(EmitLValue(E->getArg(0)).getPointer()); in EmitBuiltinExpr()
3216 const CallExpr *Call = cast<CallExpr>(E->getArg(0)); in EmitBuiltinExpr()
3217 const Expr *Chain = E->getArg(1); in EmitBuiltinExpr()
3237 Builder.CreateBitCast(EmitScalarExpr(E->getArg(0)), IntPtrType); in EmitBuiltinExpr()
3239 llvm::Value *Exchange = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3244 Builder.CreatePtrToInt(EmitScalarExpr(E->getArg(2)), IntType); in EmitBuiltinExpr()
3385 Value *Arg0 = EmitScalarExpr(E->getArg(0)), in EmitBuiltinExpr()
3386 *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3388 Value *PacketSize = OpenCLRT.getPipeElemSize(E->getArg(0)); in EmitBuiltinExpr()
3389 Value *PacketAlign = OpenCLRT.getPipeElemAlign(E->getArg(0)); in EmitBuiltinExpr()
3418 Value *Arg2 = EmitScalarExpr(E->getArg(2)), in EmitBuiltinExpr()
3419 *Arg3 = EmitScalarExpr(E->getArg(3)); in EmitBuiltinExpr()
3455 Value *Arg0 = EmitScalarExpr(E->getArg(0)), in EmitBuiltinExpr()
3456 *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3459 Value *PacketSize = OpenCLRT.getPipeElemSize(E->getArg(0)); in EmitBuiltinExpr()
3460 Value *PacketAlign = OpenCLRT.getPipeElemAlign(E->getArg(0)); in EmitBuiltinExpr()
3496 Value *Arg0 = EmitScalarExpr(E->getArg(0)), in EmitBuiltinExpr()
3497 *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3499 Value *PacketSize = OpenCLRT.getPipeElemSize(E->getArg(0)); in EmitBuiltinExpr()
3500 Value *PacketAlign = OpenCLRT.getPipeElemAlign(E->getArg(0)); in EmitBuiltinExpr()
3516 const PipeType *PipeTy = E->getArg(0)->getType()->getAs<PipeType>(); in EmitBuiltinExpr()
3525 Value *Arg0 = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3527 Value *PacketSize = OpenCLRT.getPipeElemSize(E->getArg(0)); in EmitBuiltinExpr()
3528 Value *PacketAlign = OpenCLRT.getPipeElemAlign(E->getArg(0)); in EmitBuiltinExpr()
3541 auto Arg0 = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3571 llvm::Value *Queue = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3572 llvm::Value *Flags = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3573 LValue NDRangeL = EmitAggExprToLValue(E->getArg(2)); in EmitBuiltinExpr()
3587 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(3)); in EmitBuiltinExpr()
3628 Builder.CreateZExtOrTrunc(EmitScalarExpr(E->getArg(I)), SizeTy); in EmitBuiltinExpr()
3636 if (E->getArg(3)->getType()->isBlockPointerType()) { in EmitBuiltinExpr()
3640 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(3)); in EmitBuiltinExpr()
3673 Builder.CreateZExtOrTrunc(EmitScalarExpr(E->getArg(3)), Int32Ty); in EmitBuiltinExpr()
3675 E->getArg(4)->getType()->isArrayType() in EmitBuiltinExpr()
3676 ? EmitArrayToPointerDecay(E->getArg(4)).getPointer() in EmitBuiltinExpr()
3677 : EmitScalarExpr(E->getArg(4)); in EmitBuiltinExpr()
3678 llvm::Value *ClkEvent = EmitScalarExpr(E->getArg(5)); in EmitBuiltinExpr()
3685 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(6)); in EmitBuiltinExpr()
3735 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(0)); in EmitBuiltinExpr()
3749 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(0)); in EmitBuiltinExpr()
3763 LValue NDRangeL = EmitAggExprToLValue(E->getArg(0)); in EmitBuiltinExpr()
3766 CGM.getOpenCLRuntime().emitOpenCLEnqueuedBlock(*this, E->getArg(1)); in EmitBuiltinExpr()
3784 Value *Val = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3785 Address Address = EmitPointerWithAlignment(E->getArg(1)); in EmitBuiltinExpr()
3790 Address Address = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
3795 Address Address = EmitPointerWithAlignment(E->getArg(0)); in EmitBuiltinExpr()
3831 auto Arg0 = E->getArg(0); in EmitBuiltinExpr()
3841 auto Arg1 = EmitScalarExpr(E->getArg(1)); in EmitBuiltinExpr()
3865 auto Arg0 = EmitScalarExpr(E->getArg(0)); in EmitBuiltinExpr()
3869 auto Arg1 = E->getArg(1); in EmitBuiltinExpr()
3879 auto Arg2 = EmitScalarExpr(E->getArg(2)); in EmitBuiltinExpr()
3889 EmitVAStartEnd(EmitMSVAListRef(E->getArg(0)).getPointer(), in EmitBuiltinExpr()
3899 Address DestAddr = EmitMSVAListRef(E->getArg(0)); in EmitBuiltinExpr()
3900 Address SrcAddr = EmitMSVAListRef(E->getArg(1)); in EmitBuiltinExpr()
3968 ArgValue = EmitScalarExpr(E->getArg(i)); in EmitBuiltinExpr()
3973 bool IsConst = E->getArg(i)->isIntegerConstantExpr(Result,getContext()); in EmitBuiltinExpr()
5005 const Expr *Arg = E->getArg(0); in EmitCommonNeonSISDBuiltinExpr()
5043 const Expr *Arg = E->getArg(E->getNumArgs() - 1); in EmitCommonNeonBuiltinExpr()
5719 const Expr *SysRegStrExpr = E->getArg(0)->IgnoreParenCasts(); in EmitSpecialRegisterBuiltin()
5749 llvm::Value *ArgValue = CGF.EmitScalarExpr(E->getArg(1)); in EmitSpecialRegisterBuiltin()
5802 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitISOVolatileLoad()
5803 QualType ElTy = E->getArg(0)->getType()->getPointeeType(); in EmitISOVolatileLoad()
5815 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitISOVolatileStore()
5816 Value *Value = EmitScalarExpr(E->getArg(1)); in EmitISOVolatileStore()
5817 QualType ElTy = E->getArg(0)->getType()->getPointeeType(); in EmitISOVolatileStore()
5841 if (!E->getArg(0)->EvaluateAsInt(Result, CGM.getContext())) in EmitARMBuiltinExpr()
5857 Value *Option = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5862 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5863 Value *RW = EmitScalarExpr(E->getArg(1)); in EmitARMBuiltinExpr()
5864 Value *IsData = EmitScalarExpr(E->getArg(2)); in EmitARMBuiltinExpr()
5874 llvm::Value *Arg = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5884 Ops[i] = EmitScalarExpr(E->getArg(i)); in EmitARMBuiltinExpr()
5912 Value *Coproc = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5913 Value *Opc1 = EmitScalarExpr(E->getArg(1)); in EmitARMBuiltinExpr()
5914 Value *RtAndRt2 = EmitScalarExpr(E->getArg(2)); in EmitARMBuiltinExpr()
5915 Value *CRm = EmitScalarExpr(E->getArg(3)); in EmitARMBuiltinExpr()
5939 Value *Coproc = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5940 Value *Opc1 = EmitScalarExpr(E->getArg(1)); in EmitARMBuiltinExpr()
5941 Value *CRm = EmitScalarExpr(E->getArg(2)); in EmitARMBuiltinExpr()
5978 Value *LdPtr = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
5995 Value *LoadAddr = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
6022 getContext().getTypeSize(E->getArg(0)->getType()) == 64)) { in EmitARMBuiltinExpr()
6028 Address Tmp = CreateMemTemp(E->getArg(0)->getType()); in EmitARMBuiltinExpr()
6029 Value *Val = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
6037 Value *StPtr = Builder.CreateBitCast(EmitScalarExpr(E->getArg(1)), Int8PtrTy); in EmitARMBuiltinExpr()
6043 Value *StoreVal = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
6044 Value *StoreAddr = EmitScalarExpr(E->getArg(1)); in EmitARMBuiltinExpr()
6046 QualType Ty = E->getArg(0)->getType(); in EmitARMBuiltinExpr()
6106 Value *Arg0 = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
6107 Value *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitARMBuiltinExpr()
6203 PtrOp0 = EmitPointerWithAlignment(E->getArg(0)); in EmitARMBuiltinExpr()
6230 PtrOp1 = EmitPointerWithAlignment(E->getArg(1)); in EmitARMBuiltinExpr()
6237 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitARMBuiltinExpr()
6242 bool IsConst = E->getArg(i)->isIntegerConstantExpr(Result, getContext()); in EmitARMBuiltinExpr()
6264 Value *Arg = EmitScalarExpr(E->getArg(0)); in EmitARMBuiltinExpr()
6445 const Expr *Arg = E->getArg(E->getNumArgs()-1); in EmitARMBuiltinExpr()
6651 const Expr *Arg = E->getArg(E->getNumArgs() - 1); in EmitAArch64TblBuiltinExpr()
6803 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6804 Value *RW = EmitScalarExpr(E->getArg(1)); in EmitAArch64BuiltinExpr()
6805 Value *CacheLevel = EmitScalarExpr(E->getArg(2)); in EmitAArch64BuiltinExpr()
6806 Value *RetentionPolicy = EmitScalarExpr(E->getArg(3)); in EmitAArch64BuiltinExpr()
6807 Value *IsData = EmitScalarExpr(E->getArg(4)); in EmitAArch64BuiltinExpr()
6828 llvm::Value *Arg = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6835 llvm::Value *Arg = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6845 Ops[i] = EmitScalarExpr(E->getArg(i)); in EmitAArch64BuiltinExpr()
6859 Value *LdPtr = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6875 Value *LoadAddr = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6900 getContext().getTypeSize(E->getArg(0)->getType()) == 128) { in EmitAArch64BuiltinExpr()
6906 Address Tmp = CreateMemTemp(E->getArg(0)->getType()); in EmitAArch64BuiltinExpr()
6907 EmitAnyExprToMem(E->getArg(0), Tmp, Qualifiers(), /*init*/ true); in EmitAArch64BuiltinExpr()
6914 Value *StPtr = Builder.CreateBitCast(EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
6921 Value *StoreVal = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6922 Value *StoreAddr = EmitScalarExpr(E->getArg(1)); in EmitAArch64BuiltinExpr()
6924 QualType Ty = E->getArg(0)->getType(); in EmitAArch64BuiltinExpr()
6948 if (!E->getArg(0)->EvaluateAsInt(Result, CGM.getContext())) in EmitAArch64BuiltinExpr()
6995 Value *Arg0 = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
6996 Value *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitAArch64BuiltinExpr()
7040 E->getArg(0)->EvaluateKnownConstInt(getContext()).getZExtValue(); in EmitAArch64BuiltinExpr()
7064 llvm::Value *ArgValue = EmitScalarExpr(E->getArg(1)); in EmitAArch64BuiltinExpr()
7084 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitAArch64BuiltinExpr()
7089 bool IsConst = E->getArg(i)->isIntegerConstantExpr(Result, getContext()); in EmitAArch64BuiltinExpr()
7101 Ops.push_back(EmitScalarExpr(E->getArg(E->getNumArgs() - 1))); in EmitAArch64BuiltinExpr()
7108 const Expr *Arg = E->getArg(E->getNumArgs()-1); in EmitAArch64BuiltinExpr()
7121 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7126 Value *Ptr = Builder.CreateBitCast(EmitScalarExpr(E->getArg(0)), Int128PTy); in EmitAArch64BuiltinExpr()
7133 return Builder.CreateDefaultAlignedStore(EmitScalarExpr(E->getArg(1)), Ptr); in EmitAArch64BuiltinExpr()
7141 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7156 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7173 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7191 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7201 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7211 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7229 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7260 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7281 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7298 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7314 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
7327 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
7340 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
7354 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7362 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7370 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7378 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7386 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7392 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7412 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7432 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7452 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7482 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7490 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7508 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7514 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7520 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7526 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7531 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7536 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7541 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7546 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7551 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7556 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7561 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7566 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7571 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7576 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7581 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7587 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7593 return Builder.CreateExtractElement(Ops[0], EmitScalarExpr(E->getArg(1)), in EmitAArch64BuiltinExpr()
7596 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7599 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7602 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7605 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7611 {EmitScalarExpr(E->getArg(1)), EmitScalarExpr(E->getArg(2)), Ops[0]}); in EmitAArch64BuiltinExpr()
7616 Value* Sub = Builder.CreateFSub(Zero, EmitScalarExpr(E->getArg(1)), "vsubh"); in EmitAArch64BuiltinExpr()
7618 return Builder.CreateCall(F, {Sub, EmitScalarExpr(E->getArg(2)), Ops[0]}); in EmitAArch64BuiltinExpr()
7622 return Builder.CreateAdd(Ops[0], EmitScalarExpr(E->getArg(1)), "vaddd"); in EmitAArch64BuiltinExpr()
7625 return Builder.CreateSub(Ops[0], EmitScalarExpr(E->getArg(1)), "vsubd"); in EmitAArch64BuiltinExpr()
7630 ProductOps.push_back(vectorWrapScalar16(EmitScalarExpr(E->getArg(2)))); in EmitAArch64BuiltinExpr()
7643 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7653 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7662 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7673 Ops.push_back(Builder.CreateNeg(EmitScalarExpr(E->getArg(2)))); in EmitAArch64BuiltinExpr()
7680 llvm::ConstantInt *Amt = cast<ConstantInt>(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7685 llvm::ConstantInt *Amt = cast<ConstantInt>(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7692 llvm::ConstantInt *Amt = cast<ConstantInt>(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7701 llvm::ConstantInt *Amt = cast<ConstantInt>(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7709 llvm::ConstantInt *Amt = cast<ConstantInt>(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7723 Ops[2] = Builder.CreateExtractElement(Ops[2], EmitScalarExpr(E->getArg(3)), in EmitAArch64BuiltinExpr()
7745 ProductOps.push_back(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
7759 Ops[2] = Builder.CreateExtractElement(Ops[2], EmitScalarExpr(E->getArg(3)), in EmitAArch64BuiltinExpr()
7877 Ops.push_back(EmitScalarExpr(E->getArg(3))); in EmitAArch64BuiltinExpr()
7895 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7906 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7949 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7957 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7961 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7966 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7970 Ops.push_back(EmitScalarExpr(E->getArg(1))); in EmitAArch64BuiltinExpr()
7989 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
7999 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8004 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8014 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8024 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8029 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8039 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8049 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8170 Ops.push_back(EmitScalarExpr(E->getArg(2))); in EmitAArch64BuiltinExpr()
8191 return Builder.CreateNeg(EmitScalarExpr(E->getArg(0)), "vnegd"); in EmitAArch64BuiltinExpr()
8193 return Builder.CreateFNeg(EmitScalarExpr(E->getArg(0)), "vnegh"); in EmitAArch64BuiltinExpr()
8205 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8229 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8241 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8253 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8265 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8274 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8283 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8292 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8301 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8310 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8319 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8328 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8337 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8346 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8355 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8364 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8373 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8382 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8391 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8400 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8409 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8418 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8427 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8436 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8445 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8454 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8463 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8472 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8481 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8487 Value *RHS = Builder.CreateBitCast(EmitScalarExpr(E->getArg(1)), DoubleTy); in EmitAArch64BuiltinExpr()
8495 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8504 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8512 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8521 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8529 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8538 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8546 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
8555 Ops.push_back(EmitScalarExpr(E->getArg(0))); in EmitAArch64BuiltinExpr()
9040 Value *Arg0 = EmitScalarExpr(E->getArg(0)); in EmitAArch64BuiltinExpr()
9041 Value *Arg1 = EmitScalarExpr(E->getArg(1)); in EmitAArch64BuiltinExpr()
9519 const Expr *CPUExpr = E->getArg(0)->IgnoreParenCasts(); in EmitX86CpuIs()
9570 const Expr *FeatureExpr = E->getArg(0)->IgnoreParenCasts(); in EmitX86CpuSupports()
9677 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitX86BuiltinExpr()
9684 bool IsConst = E->getArg(i)->isIntegerConstantExpr(Result, getContext()); in EmitX86BuiltinExpr()
9810 Address Tmp = CreateMemTemp(E->getArg(0)->getType()); in EmitX86BuiltinExpr()
9989 getContext().getTypeAlignInChars(E->getArg(1)->getType()).getQuantity(); in EmitX86BuiltinExpr()
10029 getContext().getTypeAlignInChars(E->getArg(1)->getType()).getQuantity(); in EmitX86BuiltinExpr()
11368 Address HighBitsAddress = EmitPointerWithAlignment(E->getArg(2)); in EmitX86BuiltinExpr()
11548 Ops.push_back(EmitScalarExpr(E->getArg(i))); in EmitPPCBuiltinExpr()
11695 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11706 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11716 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11726 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11734 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11735 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitPPCBuiltinExpr()
11752 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11776 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11791 Value *X = EmitScalarExpr(E->getArg(0)); in EmitPPCBuiltinExpr()
11792 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitPPCBuiltinExpr()
11793 Value *Z = EmitScalarExpr(E->getArg(2)); in EmitPPCBuiltinExpr()
11995 Address FlagOutPtr = EmitPointerWithAlignment(E->getArg(3)); in EmitAMDGPUBuiltinExpr()
11997 llvm::Value *X = EmitScalarExpr(E->getArg(0)); in EmitAMDGPUBuiltinExpr()
11998 llvm::Value *Y = EmitScalarExpr(E->getArg(1)); in EmitAMDGPUBuiltinExpr()
11999 llvm::Value *Z = EmitScalarExpr(E->getArg(2)); in EmitAMDGPUBuiltinExpr()
12018 llvm::Value *Src0 = EmitScalarExpr(E->getArg(0)); in EmitAMDGPUBuiltinExpr()
12019 llvm::Value *Src1 = EmitScalarExpr(E->getArg(1)); in EmitAMDGPUBuiltinExpr()
12020 llvm::Value *Src2 = EmitScalarExpr(E->getArg(2)); in EmitAMDGPUBuiltinExpr()
12021 llvm::Value *Src3 = EmitScalarExpr(E->getArg(3)); in EmitAMDGPUBuiltinExpr()
12035 Args.push_back(EmitScalarExpr(E->getArg(I))); in EmitAMDGPUBuiltinExpr()
12079 Value *Src0 = EmitScalarExpr(E->getArg(0)); in EmitAMDGPUBuiltinExpr()
12085 Value *Src0 = EmitScalarExpr(E->getArg(0)); in EmitAMDGPUBuiltinExpr()
12158 Args[I] = CGF.EmitScalarExpr(E->getArg(I)); in EmitSystemZIntrinsicWithCC()
12159 Address CCPtr = CGF.EmitPointerWithAlignment(E->getArg(NumArgs)); in EmitSystemZIntrinsicWithCC()
12171 Value *TDB = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12177 Value *TDB = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12189 Value *Data = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12194 Value *Address = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12195 Value *Data = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12210 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12220 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12231 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12240 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12247 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12248 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12249 Value *Z = EmitScalarExpr(E->getArg(2)); in EmitSystemZBuiltinExpr()
12256 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12257 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12258 Value *Z = EmitScalarExpr(E->getArg(2)); in EmitSystemZBuiltinExpr()
12266 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12267 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12268 Value *Z = EmitScalarExpr(E->getArg(2)); in EmitSystemZBuiltinExpr()
12276 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12277 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12278 Value *Z = EmitScalarExpr(E->getArg(2)); in EmitSystemZBuiltinExpr()
12287 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12294 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12302 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12305 bool IsConstM4 = E->getArg(1)->isIntegerConstantExpr(M4, getContext()); in EmitSystemZBuiltinExpr()
12306 bool IsConstM5 = E->getArg(2)->isIntegerConstantExpr(M5, getContext()); in EmitSystemZBuiltinExpr()
12348 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12349 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12352 bool IsConstM4 = E->getArg(2)->isIntegerConstantExpr(M4, getContext()); in EmitSystemZBuiltinExpr()
12378 Value *X = EmitScalarExpr(E->getArg(0)); in EmitSystemZBuiltinExpr()
12379 Value *Y = EmitScalarExpr(E->getArg(1)); in EmitSystemZBuiltinExpr()
12382 bool IsConstM4 = E->getArg(2)->isIntegerConstantExpr(M4, getContext()); in EmitSystemZBuiltinExpr()
12491 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12493 getNaturalPointeeTypeAlignment(E->getArg(0)->getType()); in EmitNVPTXBuiltinExpr()
12500 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12504 {Ptr, EmitScalarExpr(E->getArg(1))}); in EmitNVPTXBuiltinExpr()
12565 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12566 Value *Val = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12575 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12576 Value *Val = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12585 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12586 Value *Val = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12593 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12594 Value *Val = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12720 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12725 {Ptr, EmitScalarExpr(E->getArg(1)), EmitScalarExpr(E->getArg(2))}); in EmitNVPTXBuiltinExpr()
12730 Value *Ptr = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12735 {Ptr, EmitScalarExpr(E->getArg(1)), EmitScalarExpr(E->getArg(2))}); in EmitNVPTXBuiltinExpr()
12739 Value *Mask = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12740 Value *Val = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12741 Address PredOutPtr = EmitPointerWithAlignment(E->getArg(2)); in EmitNVPTXBuiltinExpr()
12764 Address Dst = EmitPointerWithAlignment(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12765 Value *Src = EmitScalarExpr(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12766 Value *Ldm = EmitScalarExpr(E->getArg(2)); in EmitNVPTXBuiltinExpr()
12768 if (!E->getArg(3)->isIntegerConstantExpr(isColMajorArg, getContext())) in EmitNVPTXBuiltinExpr()
12857 Value *Dst = EmitScalarExpr(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12858 Address Src = EmitPointerWithAlignment(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12859 Value *Ldm = EmitScalarExpr(E->getArg(2)); in EmitNVPTXBuiltinExpr()
12861 if (!E->getArg(3)->isIntegerConstantExpr(isColMajorArg, getContext())) in EmitNVPTXBuiltinExpr()
12927 Address Dst = EmitPointerWithAlignment(E->getArg(0)); in EmitNVPTXBuiltinExpr()
12928 Address SrcA = EmitPointerWithAlignment(E->getArg(1)); in EmitNVPTXBuiltinExpr()
12929 Address SrcB = EmitPointerWithAlignment(E->getArg(2)); in EmitNVPTXBuiltinExpr()
12930 Address SrcC = EmitPointerWithAlignment(E->getArg(3)); in EmitNVPTXBuiltinExpr()
12932 if (!E->getArg(4)->isIntegerConstantExpr(LayoutArg, getContext())) in EmitNVPTXBuiltinExpr()
12938 if (!E->getArg(5)->isIntegerConstantExpr(SatfArg, getContext())) in EmitNVPTXBuiltinExpr()
13076 Value *I = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13083 EmitScalarExpr(E->getArg(0)), in EmitWebAssemblyBuiltinExpr()
13084 EmitScalarExpr(E->getArg(1)) in EmitWebAssemblyBuiltinExpr()
13090 Value *Tag = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13091 Value *Obj = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13100 Value *Addr = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13101 Value *Expected = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13102 Value *Timeout = EmitScalarExpr(E->getArg(2)); in EmitWebAssemblyBuiltinExpr()
13107 Value *Addr = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13108 Value *Expected = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13109 Value *Timeout = EmitScalarExpr(E->getArg(2)); in EmitWebAssemblyBuiltinExpr()
13114 Value *Addr = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13115 Value *Count = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13125 Value *Src = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13137 Value *Src = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13147 Value *LHS = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13148 Value *RHS = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13157 Value *LHS = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13158 Value *RHS = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13172 if (!E->getArg(1)->isIntegerConstantExpr(LaneConst, getContext())) in EmitWebAssemblyBuiltinExpr()
13174 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13200 if (!E->getArg(1)->isIntegerConstantExpr(LaneConst, getContext())) in EmitWebAssemblyBuiltinExpr()
13202 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13204 Value *Val = EmitScalarExpr(E->getArg(2)); in EmitWebAssemblyBuiltinExpr()
13250 Value *LHS = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13251 Value *RHS = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13256 Value *V1 = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13257 Value *V2 = EmitScalarExpr(E->getArg(1)); in EmitWebAssemblyBuiltinExpr()
13258 Value *C = EmitScalarExpr(E->getArg(2)); in EmitWebAssemblyBuiltinExpr()
13288 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13294 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13300 Value *Vec = EmitScalarExpr(E->getArg(0)); in EmitWebAssemblyBuiltinExpr()
13317 Address BP = EmitPointerWithAlignment(E->getArg(0)); in EmitHexagonBuiltinExpr()
13323 Ops = { Base, EmitScalarExpr(E->getArg(1)), EmitScalarExpr(E->getArg(2)), in EmitHexagonBuiltinExpr()
13324 EmitScalarExpr(E->getArg(3)) }; in EmitHexagonBuiltinExpr()
13326 Ops = { Base, EmitScalarExpr(E->getArg(1)), in EmitHexagonBuiltinExpr()
13327 EmitScalarExpr(E->getArg(2)) }; in EmitHexagonBuiltinExpr()
13331 llvm::Value *LV = Builder.CreateBitCast(EmitScalarExpr(E->getArg(0)), in EmitHexagonBuiltinExpr()
13333 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitHexagonBuiltinExpr()
13342 Address BP = EmitPointerWithAlignment(E->getArg(0)); in EmitHexagonBuiltinExpr()
13348 Ops = { Base, EmitScalarExpr(E->getArg(1)), EmitScalarExpr(E->getArg(2)), in EmitHexagonBuiltinExpr()
13349 EmitScalarExpr(E->getArg(3)), EmitScalarExpr(E->getArg(4)) }; in EmitHexagonBuiltinExpr()
13351 Ops = { Base, EmitScalarExpr(E->getArg(1)), in EmitHexagonBuiltinExpr()
13352 EmitScalarExpr(E->getArg(2)), EmitScalarExpr(E->getArg(3)) }; in EmitHexagonBuiltinExpr()
13355 llvm::Value *LV = Builder.CreateBitCast(EmitScalarExpr(E->getArg(0)), in EmitHexagonBuiltinExpr()
13357 Address Dest = EmitPointerWithAlignment(E->getArg(0)); in EmitHexagonBuiltinExpr()
13371 Builder.CreateBitCast(EmitScalarExpr(E->getArg(0)), Int8PtrTy); in EmitHexagonBuiltinExpr()
13376 Address DestAddr = EmitPointerWithAlignment(E->getArg(1)); in EmitHexagonBuiltinExpr()
13384 Ops = {BaseAddress, EmitScalarExpr(E->getArg(2))}; in EmitHexagonBuiltinExpr()
13405 Address Dest = EmitPointerWithAlignment(E->getArg(2)); in EmitHexagonBuiltinExpr()
13417 Ops = { EmitScalarExpr(E->getArg(0)), EmitScalarExpr(E->getArg(1)), QLd }; in EmitHexagonBuiltinExpr()
13420 llvm::Value *Base = Builder.CreateBitCast(EmitScalarExpr(E->getArg(2)), in EmitHexagonBuiltinExpr()
13427 Address Dest = EmitPointerWithAlignment(E->getArg(2)); in EmitHexagonBuiltinExpr()
13439 Ops = { EmitScalarExpr(E->getArg(0)), EmitScalarExpr(E->getArg(1)), QLd }; in EmitHexagonBuiltinExpr()
13442 llvm::Value *Base = Builder.CreateBitCast(EmitScalarExpr(E->getArg(2)), in EmitHexagonBuiltinExpr()