@@ -745,7 +745,9 @@ kmp_int32 __kmpc_omp_task_with_deps(ident_t *loc_ref, kmp_int32 gtid,
745
745
746
746
for (i = 0 ; i < ndeps; i++) {
747
747
ompt_deps[i].variable .ptr = (void *)dep_list[i].base_addr ;
748
- if (dep_list[i].flags .in && dep_list[i].flags .out )
748
+ if (dep_list[i].base_addr == KMP_SIZE_T_MAX)
749
+ ompt_deps[i].dependence_type = ompt_dependence_type_out_all_memory;
750
+ else if (dep_list[i].flags .in && dep_list[i].flags .out )
749
751
ompt_deps[i].dependence_type = ompt_dependence_type_inout;
750
752
else if (dep_list[i].flags .out )
751
753
ompt_deps[i].dependence_type = ompt_dependence_type_out;
@@ -755,10 +757,15 @@ kmp_int32 __kmpc_omp_task_with_deps(ident_t *loc_ref, kmp_int32 gtid,
755
757
ompt_deps[i].dependence_type = ompt_dependence_type_mutexinoutset;
756
758
else if (dep_list[i].flags .set )
757
759
ompt_deps[i].dependence_type = ompt_dependence_type_inoutset;
760
+ else if (dep_list[i].flags .all )
761
+ ompt_deps[i].dependence_type = ompt_dependence_type_out_all_memory;
758
762
}
759
763
for (i = 0 ; i < ndeps_noalias; i++) {
760
764
ompt_deps[ndeps + i].variable .ptr = (void *)noalias_dep_list[i].base_addr ;
761
- if (noalias_dep_list[i].flags .in && noalias_dep_list[i].flags .out )
765
+ if (noalias_dep_list[i].base_addr == KMP_SIZE_T_MAX)
766
+ ompt_deps[ndeps + i].dependence_type =
767
+ ompt_dependence_type_out_all_memory;
768
+ else if (noalias_dep_list[i].flags .in && noalias_dep_list[i].flags .out )
762
769
ompt_deps[ndeps + i].dependence_type = ompt_dependence_type_inout;
763
770
else if (noalias_dep_list[i].flags .out )
764
771
ompt_deps[ndeps + i].dependence_type = ompt_dependence_type_out;
@@ -769,6 +776,9 @@ kmp_int32 __kmpc_omp_task_with_deps(ident_t *loc_ref, kmp_int32 gtid,
769
776
ompt_dependence_type_mutexinoutset;
770
777
else if (noalias_dep_list[i].flags .set )
771
778
ompt_deps[ndeps + i].dependence_type = ompt_dependence_type_inoutset;
779
+ else if (noalias_dep_list[i].flags .all )
780
+ ompt_deps[ndeps + i].dependence_type =
781
+ ompt_dependence_type_out_all_memory;
772
782
}
773
783
ompt_callbacks.ompt_callback (ompt_callback_dependences)(
774
784
&(new_taskdata->ompt_task_info .task_data ), ompt_deps, ompt_ndeps);
0 commit comments