reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3957 CGF.StartFunction(GlobalDecl(), C.VoidTy, Fn, CGFI, Args, Loc, Loc); 3959 CGBuilderTy &Bld = CGF.Builder; 3961 Address AddrBufferArg = CGF.GetAddrOfLocalVar(&BufferArg); 3966 CGF.EmitLoadOfScalar(AddrBufferArg, /*Volatile=*/false, C.VoidPtrTy, Loc), 3972 CGF.CreateMemTemp(ReductionArrayTy, ".omp.reduction.red_list"); 3974 llvm::Value *Idxs[] = {llvm::ConstantInt::getNullValue(CGF.Int32Ty), 3975 CGF.EmitLoadOfScalar(CGF.GetAddrOfLocalVar(&IdxArg), 3975 CGF.EmitLoadOfScalar(CGF.GetAddrOfLocalVar(&IdxArg), 3980 Address Elem = CGF.Builder.CreateConstArrayGEP(ReductionList, Idx); 3984 LValue GlobLVal = CGF.EmitLValueForField( 3985 CGF.MakeNaturalAlignAddrLValue(BufferArrPtr, StaticTy), FD); 3987 llvm::Value *Ptr = CGF.EmitCastToVoidPtr(BufferPtr); 3988 CGF.EmitStoreOfScalar(Ptr, Elem, /*Volatile=*/false, C.VoidPtrTy); 3992 Elem = CGF.Builder.CreateConstArrayGEP(ReductionList, Idx); 3993 llvm::Value *Size = CGF.Builder.CreateIntCast( 3994 CGF.getVLASize( 3995 CGF.getContext().getAsVariableArrayType((*IPriv)->getType())) 3997 CGF.SizeTy, /*isSigned=*/false); 3998 CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy), 3998 CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy), 3998 CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy), 4005 CGF.EmitCastToVoidPtr(ReductionList.getPointer()); 4006 Address AddrReduceListArg = CGF.GetAddrOfLocalVar(&ReduceListArg); 4007 llvm::Value *ReducedPtr = CGF.EmitLoadOfScalar( 4010 CGF, Loc, ReduceFn, {ReducedPtr, GlobalReduceList}); 4011 CGF.FinishFunction();