Searched refs:bundles (Results 1 - 6 of 6) sorted by relevance

/xsrc/external/mit/MesaLib/dist/src/panfrost/midgard/
H A Dmir.c359 midgard_bundle *bundles = local in function:mir_bundle_idx_for_ins
360 (midgard_bundle *) block->bundles.data;
362 size_t count = (block->bundles.size / sizeof(midgard_bundle));
365 for (unsigned j = 0; j < bundles[i].instruction_count; ++j) {
366 if (bundles[i].instructions[j] == tag)
383 size_t count = util_dynarray_num_elements(&block->bundles, midgard_bundle);
384 UNUSED void *unused = util_dynarray_grow(&block->bundles, midgard_bundle, 1);
386 midgard_bundle *bundles = (midgard_bundle *) block->bundles.data; local in function:mir_insert_instruction_before_scheduled
387 memmove(bundles
412 midgard_bundle *bundles = (midgard_bundle *) block->bundles.data; local in function:mir_insert_instruction_after_scheduled
[all...]
H A Dcompiler.h196 struct util_dynarray bundles; member in struct:midgard_block
389 util_dynarray_foreach(&block->bundles, midgard_bundle, v)
392 util_dynarray_foreach_reverse(&block->bundles, midgard_bundle, v)
H A Dmidgard_schedule.c33 * must be grouped into VLIW bundles according to following model:
54 * Load/store instructions are also in bundles of simply two instructions, and
1417 /* Schedule a single block by iterating its instruction to create bundles.
1449 struct util_dynarray bundles; local in function:schedule_block
1450 util_dynarray_init(&bundles, NULL);
1471 util_dynarray_append(&bundles, midgard_bundle, bundle);
1477 /* We emitted bundles backwards; copy into the block in reverse-order */
1479 util_dynarray_init(&block->bundles, block);
1480 util_dynarray_foreach_reverse(&bundles, midgard_bundle, bundle) {
1481 util_dynarray_append(&block->bundles, midgard_bundl
[all...]
H A Dmidgard_emit.c407 /* Up to 3 { ALU, LDST } bundles can execute in parallel with a texture op.
408 * Given a texture op, lookahead to see how many such bundles we can flag for
416 if (bundle >= (midgard_bundle *) ((char *) block->bundles.data + block->bundles.size))
956 /* After everything is scheduled, emit whole bundles at a time */
H A Dmidgard_compile.c2985 util_dynarray_element(&v->bundles, midgard_bundle, 0);
3191 /* Cache _all_ bundles in source order for lookahead across failed branches */
3196 bundle_count += block->bundles.size / sizeof(midgard_bundle);
3202 util_dynarray_foreach(&block->bundles, midgard_bundle, bundle) {
3254 /* Count instructions and bundles */
3259 &block->bundles, midgard_bundle);
3278 "%u inst, %u bundles, %u quadwords, "
/xsrc/external/mit/MesaLib.old/dist/src/gallium/drivers/panfrost/midgard/
H A Dmidgard_compile.c173 struct util_dynarray bundles; member in struct:midgard_block
2883 /* Schedule a single block by iterating its instruction to create bundles.
2889 util_dynarray_init(&block->bundles, NULL);
2896 util_dynarray_append(&block->bundles, midgard_bundle, bundle);
2925 /* After everything is scheduled, emit whole bundles at a time */
3816 midgard_bundle *initial_bundle = util_dynarray_element(&initial_block->bundles, midgard_bundle, 0);
3951 /* Now that all the bundles are scheduled and we can calculate block
3957 util_dynarray_foreach(&block->bundles, midgard_bundle, bundle) {
3990 for (midgard_bundle *bun = bundle + 1; bun < (midgard_bundle *)((char*) block->bundles.data + block->bundles
[all...]

Completed in 17 milliseconds