[clang] [llvm] [mlir] [OMPIRBuilder] - Handle dependencies in `createTarget` (PR #93977)
Michael Kruse via cfe-commits
cfe-commits at lists.llvm.org
Thu Jun 6 09:00:01 PDT 2024
================
@@ -1762,6 +1762,26 @@ class OpenMPIRBuilder {
EmitFallbackCallbackTy EmitTargetCallFallbackCB, TargetKernelArgs &Args,
Value *DeviceID, Value *RTLoc, InsertPointTy AllocaIP);
+ /// Generate a target-task for the target construct
+ ///
+ /// \param OutlinedFn The outlined device/target kernel function.
+ /// \param OutlinedFnID The ooulined function ID.
+ /// \param EmitTargetCallFallbackCB Call back function to generate host
+ /// fallback code.
+ /// \param Args Data structure holding information about the kernel arguments.
+ /// \param DeviceID Identifier for the device via the 'device' clause.
+ /// \param RTLoc Source location identifier
+ /// \param AllocaIP The insertion point to be used for alloca instructions.
+ /// \param Dependencies Vector of DependData objects holding information of
+ /// dependencies as specified by the 'depend' clause.
+ /// \param HasNoWait True if the target construct had 'nowait' on it, false
+ /// otherwise
+ InsertPointTy emitTargetTask(
+ Function *OutlinedFn, Value *OutlinedFnID,
+ EmitFallbackCallbackTy EmitTargetCallFallbackCB, TargetKernelArgs &Args,
+ Value *DeviceID, Value *RTLoc, InsertPointTy AllocaIP,
+ SmallVector<OpenMPIRBuilder::DependData> &Dependencies, bool HasNoWait);
----------------
Meinersbur wrote:
```suggestion
ArrayRef<OpenMPIRBuilder::DependData> Dependencies, bool HasNoWait);
```
https://github.com/llvm/llvm-project/pull/93977
More information about the cfe-commits
mailing list