Lines Matching refs:clause

32 bi_pack_header(bi_clause *clause, bi_clause *next_1, bi_clause *next_2)
43 if (clause->message_type == BIFROST_MESSAGE_BARRIER)
52 BIFROST_FLOW_END : clause->flow_control,
53 .terminate_discarded_threads = clause->td,
54 .next_clause_prefetch = clause->next_clause_prefetch && next_1,
56 .staging_register = clause->staging_register,
58 .dependency_slot = clause->scoreboard_id,
59 .message_type = clause->message_type,
61 .flush_to_zero = clause->ftz ? BIFROST_FTZ_ALWAYS : BIFROST_FTZ_DISABLE
321 bi_pack_tuple(bi_clause *clause, bi_tuple *tuple, bi_tuple *prev, bool first_tuple, gl_shader_stage stage)
353 clause->staging_register = add->src[0].value;
359 clause->staging_register = add->dest[0].value;
384 bi_clause *clause = list_last_entry(&block->clauses, bi_clause, link);
385 bi_instr *br = bi_last_instr_in_clause(clause);
391 int32_t qwords = bi_block_offset(ctx, clause, br->branch_target);
402 assert(clause->pcrel_idx < 8);
403 clause->constants[clause->pcrel_idx] |= ((uint64_t) raw) << 32ull;
417 * indicates the position in the clause */
638 bi_pack_clause(bi_context *ctx, bi_clause *clause,
644 for (unsigned i = 0; i < clause->tuple_count; ++i) {
645 unsigned prev = ((i == 0) ? clause->tuple_count : i) - 1;
646 ins[i] = bi_pack_tuple(clause, &clause->tuples[i],
647 &clause->tuples[prev], i == 0, stage);
649 bi_instr *add = clause->tuples[i].add;
660 bool ec0_packed = bi_ec0_packed(clause->tuple_count);
663 clause->constant_count = MAX2(clause->constant_count, 1);
666 DIV_ROUND_UP(clause->constant_count - (ec0_packed ? 1 : 0), 2);
668 uint64_t header = bi_pack_header(clause, next_1, next_2);
669 uint64_t ec0 = (clause->constants[0] >> 4);
670 unsigned m0 = (clause->pcrel_idx == 0) ? 4 : 0;
687 unsigned count = counts[clause->tuple_count - 1];
690 ASSERTED unsigned idx = indices[clause->tuple_count - 1][pos];
695 /* Whether to end the clause immediately after the last tuple */
698 bi_pack_format(emission, indices[clause->tuple_count - 1][pos],
699 ins, clause->tuple_count, header, ec0, m0,
706 bi_pack_constants(clause->tuple_count, clause->constants,
713 const bi_clause *clause)
719 const bi_tuple *tuple = &clause->tuples[clause->tuple_count - 1];
742 bi_foreach_clause_in_block(block, clause) {
743 bool is_last = (clause->link.next == &block->clauses);
746 * the block for the last clause in the block or just
747 * the next clause within the block */
755 next = bi_next_clause(ctx, block, clause);
761 bi_pack_clause(ctx, clause, next, next_2, emission, ctx->stage);
764 bi_collect_blend_ret_addr(ctx, emission, clause);