LLVM 24.0.0git
llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs Struct Reference

Container to pass LLVM IR runtime values or constants related to the number of teams and threads with which the kernel must be launched, as well as the trip count of the loop, if it is an SPMD or Generic-SPMD kernel. More...

#include "llvm/Frontend/OpenMP/OMPIRBuilder.h"

Public Attributes

SmallVector< Value *, 3 > MaxTeams = {nullptr}
SmallVector< Value *, 3 > MinTeams = {nullptr}
SmallVector< Value *, 3 > TargetThreadLimit = {nullptr}
SmallVector< Value *, 3 > TeamsThreadLimit = {nullptr}
SmallVector< Value * > MaxThreads = {nullptr}
 'parallel' construct 'num_threads' clause value, if present and it is an SPMD kernel.
ValueLoopTripCount = nullptr
 Total number of iterations of the SPMD or Generic-SPMD kernel or null if it is a generic kernel.
ValueDeviceID = nullptr
 Device ID value used in the kernel launch.

Detailed Description

Container to pass LLVM IR runtime values or constants related to the number of teams and threads with which the kernel must be launched, as well as the trip count of the loop, if it is an SPMD or Generic-SPMD kernel.

These must be defined in the host prior to the call to the kernel launch OpenMP RTL function.

Definition at line 2861 of file OMPIRBuilder.h.

Member Data Documentation

◆ DeviceID

Value* llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::DeviceID = nullptr

Device ID value used in the kernel launch.

Definition at line 2876 of file OMPIRBuilder.h.

Referenced by emitTargetCall().

◆ LoopTripCount

Value* llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::LoopTripCount = nullptr

Total number of iterations of the SPMD or Generic-SPMD kernel or null if it is a generic kernel.

Definition at line 2873 of file OMPIRBuilder.h.

Referenced by emitTargetCall().

◆ MaxTeams

SmallVector<Value *, 3> llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::MaxTeams = {nullptr}

Definition at line 2862 of file OMPIRBuilder.h.

Referenced by emitTargetCall().

◆ MaxThreads

SmallVector<Value *> llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::MaxThreads = {nullptr}

'parallel' construct 'num_threads' clause value, if present and it is an SPMD kernel.

Definition at line 2869 of file OMPIRBuilder.h.

Referenced by emitTargetCall().

◆ MinTeams

SmallVector<Value *, 3> llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::MinTeams = {nullptr}

Definition at line 2863 of file OMPIRBuilder.h.

◆ TargetThreadLimit

SmallVector<Value *, 3> llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::TargetThreadLimit = {nullptr}

Definition at line 2864 of file OMPIRBuilder.h.

Referenced by emitTargetCall().

◆ TeamsThreadLimit

SmallVector<Value *, 3> llvm::OpenMPIRBuilder::TargetKernelRuntimeAttrs::TeamsThreadLimit = {nullptr}

Definition at line 2865 of file OMPIRBuilder.h.

Referenced by emitTargetCall().


The documentation for this struct was generated from the following file: