Skip to content

Commit c073450

Browse files
committed
Add host_data directive
1 parent c03adf9 commit c073450

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/common/include/parallel_macros.fpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,11 @@
193193
$:device_val
194194
#:enddef
195195

196+
#:def GEN_USE_DEVICE_STR(use_device)
197+
#:set use_device_val = GEN_PARENTHESES_CLAUSE('use_device', use_device)
198+
$:use_device_val
199+
#:enddef
200+
196201

197202
#:def GPU_PARALLEL_LOOP(collapse=None, private=None, parallelism='[gang, vector]', &
198203
& default='present', firstprivate=None, reduction=None, reductionOp=None, &
@@ -351,6 +356,15 @@
351356
$:acc_directive
352357
#:enddef
353358

359+
#:def GPU_HOST_DATA(use_device=None, extraAccArgs=None)
360+
#:set use_device_val = GEN_USE_DEVICE_STR(use_device)
361+
#:set extraAccArgs_val = GEN_EXTRA_ARGS_STR(extraAccArgs)
362+
363+
#:set clause_val = use_device_val.strip('\n')
364+
#:set acc_directive = '!$acc host_data ' + clause_val + extraAccArgs_val.strip('\n')
365+
$:acc_directive
366+
#:enddef
367+
354368
#:def GPU_ENTER_DATA(copyin=None, copyinReadOnly=None, create=None, attach=None, extraAccArgs=None)
355369
#:set copyin_val = GEN_COPYIN_STR(copyin, False).strip('\n') + GEN_COPYIN_STR(copyinReadOnly, True).strip('\n')
356370

0 commit comments

Comments
 (0)