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

References

tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
 4261   if (!CGF.HaveInsertPoint())
 4272     CGOpenMPRuntime::emitReduction(CGF, Loc, Privates, LHSExprs, RHSExprs,
 4284   llvm::Value *RTLoc = emitUpdateLocation(CGF, Loc);
 4285   llvm::Value *ThreadId = getThreadID(CGF, Loc);
 4302       CGF.CreateMemTemp(ReductionArrayTy, ".omp.reduction.red_list");
 4306     Address Elem = CGF.Builder.CreateConstArrayGEP(ReductionList, Idx);
 4307     CGF.Builder.CreateStore(
 4308         CGF.Builder.CreatePointerBitCastOrAddrSpaceCast(
 4309             CGF.EmitLValue(RHSExprs[I]).getPointer(), CGF.VoidPtrTy),
 4309             CGF.EmitLValue(RHSExprs[I]).getPointer(), CGF.VoidPtrTy),
 4314       Elem = CGF.Builder.CreateConstArrayGEP(ReductionList, Idx);
 4315       llvm::Value *Size = CGF.Builder.CreateIntCast(
 4316           CGF.getVLASize(
 4317                  CGF.getContext().getAsVariableArrayType((*IPriv)->getType()))
 4319           CGF.SizeTy, /*isSigned=*/false);
 4320       CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy),
 4320       CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy),
 4320       CGF.Builder.CreateStore(CGF.Builder.CreateIntToPtr(Size, CGF.VoidPtrTy),
 4325   llvm::Value *RL = CGF.Builder.CreatePointerBitCastOrAddrSpaceCast(
 4326       ReductionList.getPointer(), CGF.VoidPtrTy);
 4328       Loc, CGF.ConvertTypeForMem(ReductionArrayTy)->getPointerTo(), Privates,
 4330   llvm::Value *ReductionArrayTySize = CGF.getTypeSize(ReductionArrayTy);
 4339                            CGF.Builder.getInt32(RHSExprs.size()),
 4345     Res = CGF.EmitRuntimeCall(
 4368     llvm::Value *GlobalBufferPtr = CGF.EmitLoadOfScalar(
 4386         CGF.Builder.getInt32(C.getLangOpts().OpenMPCUDAReductionBufNum),
 4395     Res = CGF.EmitRuntimeCall(
 4402   llvm::BasicBlock *ExitBB = CGF.createBasicBlock(".omp.reduction.done");
 4403   llvm::BasicBlock *ThenBB = CGF.createBasicBlock(".omp.reduction.then");
 4404   llvm::Value *Cond = CGF.Builder.CreateICmpEQ(
 4406   CGF.Builder.CreateCondBr(Cond, ThenBB, ExitBB);
 4412   CGF.EmitBlock(ThenBB);
 4435   RCG(CGF);
 4437   (void)ApplyDebugLocation::CreateEmpty(CGF);
 4438   CGF.EmitBlock(ExitBB, /*IsFinished=*/true);