Lines Matching refs:group
108 struct r600_pc_group *group = query->groups; in r600_pc_query_destroy() local
109 query->groups = group->next; in r600_pc_query_destroy()
110 FREE(group); in r600_pc_query_destroy()
132 struct r600_pc_group *group; in r600_pc_query_emit_start() local
139 for (group = query->groups; group; group = group->next) { in r600_pc_query_emit_start()
140 struct r600_perfcounter_block *block = group->block; in r600_pc_query_emit_start()
142 if (group->se != current_se || group->instance != current_instance) { in r600_pc_query_emit_start()
143 current_se = group->se; in r600_pc_query_emit_start()
144 current_instance = group->instance; in r600_pc_query_emit_start()
145 pc->emit_instance(ctx, group->se, group->instance); in r600_pc_query_emit_start()
148 pc->emit_select(ctx, block, group->num_counters, group->selectors); in r600_pc_query_emit_start()
163 struct r600_pc_group *group; in r600_pc_query_emit_stop() local
167 for (group = query->groups; group; group = group->next) { in r600_pc_query_emit_stop()
168 struct r600_perfcounter_block *block = group->block; in r600_pc_query_emit_stop()
169 unsigned se = group->se >= 0 ? group->se : 0; in r600_pc_query_emit_stop()
172 if ((block->flags & R600_PC_BLOCK_SE) && (group->se < 0)) in r600_pc_query_emit_stop()
176 unsigned instance = group->instance >= 0 ? group->instance : 0; in r600_pc_query_emit_stop()
181 group->num_counters, group->selectors, in r600_pc_query_emit_stop()
183 va += sizeof(uint64_t) * group->num_counters; in r600_pc_query_emit_stop()
184 } while (group->instance < 0 && ++instance < block->num_instances); in r600_pc_query_emit_stop()
238 struct r600_pc_group *group = query->groups; in get_group_state() local
240 while (group) { in get_group_state()
241 if (group->block == block && group->sub_gid == sub_gid) in get_group_state()
242 return group; in get_group_state()
243 group = group->next; in get_group_state()
246 group = CALLOC_STRUCT(r600_pc_group); in get_group_state()
247 if (!group) in get_group_state()
250 group->block = block; in get_group_state()
251 group->sub_gid = sub_gid; in get_group_state()
269 FREE(group); in get_group_state()
282 group->se = sub_gid / block->num_instances; in get_group_state()
285 group->se = -1; in get_group_state()
289 group->instance = sub_gid; in get_group_state()
291 group->instance = -1; in get_group_state()
294 group->next = query->groups; in get_group_state()
295 query->groups = group; in get_group_state()
297 return group; in get_group_state()
308 struct r600_pc_group *group; in r600_create_batch_query() local
340 group = get_group_state(screen, query, block, sub_gid); in r600_create_batch_query()
341 if (!group) in r600_create_batch_query()
344 if (group->num_counters >= block->num_counters) { in r600_create_batch_query()
350 group->selectors[group->num_counters] = sub_index; in r600_create_batch_query()
351 ++group->num_counters; in r600_create_batch_query()
362 for (group = query->groups; group; group = group->next) { in r600_create_batch_query()
363 struct r600_perfcounter_block *block = group->block; in r600_create_batch_query()
367 if ((block->flags & R600_PC_BLOCK_SE) && group->se < 0) in r600_create_batch_query()
369 if (group->instance < 0) in r600_create_batch_query()
372 group->result_base = i; in r600_create_batch_query()
373 query->b.result_size += sizeof(uint64_t) * instances * group->num_counters; in r600_create_batch_query()
374 i += instances * group->num_counters; in r600_create_batch_query()
376 pc->get_size(block, group->num_counters, group->selectors, in r600_create_batch_query()
402 group = get_group_state(screen, query, block, sub_gid); in r600_create_batch_query()
403 assert(group != NULL); in r600_create_batch_query()
405 for (j = 0; j < group->num_counters; ++j) { in r600_create_batch_query()
406 if (group->selectors[j] == sub_index) in r600_create_batch_query()
410 counter->base = group->result_base + j; in r600_create_batch_query()
411 counter->stride = group->num_counters; in r600_create_batch_query()
414 if ((block->flags & R600_PC_BLOCK_SE) && group->se < 0) in r600_create_batch_query()
416 if (group->instance < 0) in r600_create_batch_query()