diff --git a/src/trapping/cfrfme.cpp b/src/trapping/cfrfme.cpp index d0891cee028854355f197ca0af38ead743ac8817..2955edcb2800a3a58cdd2b3021ee9d0b7ab5e177 100644 --- a/src/trapping/cfrfme.cpp +++ b/src/trapping/cfrfme.cpp @@ -649,10 +649,12 @@ void map_data( double *_yv, int nyv, double *_zv, int nzv, double *vec_vkzm, int jlmf, int jlml, int nkv, int nlmmt ) { + int nkvs = nkv * nkv; #pragma omp target enter data map(to: vec_wsum[0:size_vec_wsum]) \ map(alloc: global_vec_w[0:size_global_vec_w]) \ map(to: vec_tt1_wk[0:size_vec_tt1_wk]) \ - map(to: _xv[0:nxv], _yv[0:nyv], _zv[0:nzv]) + map(to: _xv[0:nxv], _yv[0:nyv], _zv[0:nzv]) \ + map(to: vkv[0:nkv], vec_vkzm[0:nkvs]) } void offload_loop( @@ -719,9 +721,11 @@ void unmap_data( double *_yv, int nyv, double *_zv, int nzv, double *vec_vkzm, int jlmf, int jlml, int nkv, int nlmmt ) { + int nkvs = nkv * nkv; #pragma omp target exit data map(from: vec_wsum[0:size_vec_wsum]) \ map(delete: global_vec_w[0:size_global_vec_w]) \ map(delete: vec_tt1_wk[0:size_vec_tt1_wk]) \ - map(delete: _xv[0:nxv], _yv[0:nyv], _zv[0:nzv]) + map(delete: _xv[0:nxv], _yv[0:nyv], _zv[0:nzv]) \ + map(delete: vkv[0:nkv], vec_vkzm[0:nkvs]) } #endif // USE TARGET_OFFLOAD