[STATS] Add stats gathering for taskloop construct

llvm-svn: 272560
This commit is contained in:
Jonathan Peyton 2016-06-13 16:56:41 +00:00
parent ece8c0c65f
commit 5a299da55d
2 changed files with 5 additions and 0 deletions

View File

@ -101,6 +101,7 @@ enum stats_state_e {
macro (REDUCE_wait, 0, arg) \
macro (REDUCE_nowait, 0, arg) \
macro (OMP_TASKYIELD, 0, arg) \
macro (OMP_TASKLOOP, 0, arg) \
macro (TASK_executed, 0, arg) \
macro (TASK_cancelled, 0, arg) \
macro (TASK_stolen, 0, arg) \
@ -140,6 +141,7 @@ enum stats_state_e {
macro (OMP_task_join_bar, 0, arg) \
macro (OMP_task_plain_bar, 0, arg) \
macro (OMP_serial, 0, arg) \
macro (OMP_taskloop_scheduling, 0, arg) \
macro (OMP_set_numthreads, stats_flags_e::noUnits | stats_flags_e::noTotal, arg) \
macro (OMP_PARALLEL_args, stats_flags_e::noUnits | stats_flags_e::noTotal, arg) \
macro (FOR_static_iterations, stats_flags_e::noUnits | stats_flags_e::noTotal, arg) \
@ -250,6 +252,7 @@ enum stats_state_e {
macro(OMP_task_join_bar, 0, arg) \
macro(OMP_task_plain_bar, 0, arg) \
macro(OMP_serial, 0, arg) \
macro(OMP_taskloop_scheduling, 0, arg) \
KMP_FOREACH_EXPLICIT_DEVELOPER_TIMER(macro,arg) \
macro(LAST, 0, arg)

View File

@ -2944,6 +2944,8 @@ __kmp_taskloop_linear(ident_t *loc, int gtid, kmp_task_t *task,
kmp_uint64 *lb, kmp_uint64 *ub, kmp_int64 st,
int sched, kmp_uint64 grainsize, void *task_dup )
{
KMP_COUNT_BLOCK(OMP_TASKLOOP);
KMP_TIME_PARTITIONED_BLOCK(OMP_taskloop_scheduling);
p_task_dup_t ptask_dup = (p_task_dup_t)task_dup;
kmp_uint64 tc;
kmp_uint64 lower = *lb; // compiler provides global bounds here