Searched refs:ir3_block (Results 1 - 25 of 45) sorted by relevance

12

/xsrc/external/mit/MesaLib/dist/src/freedreno/ir3/
H A Dir3_dominance.c35 static struct ir3_block *
36 intersect(struct ir3_block *b1, struct ir3_block *b2)
54 calc_dominance(struct ir3_block *block)
56 struct ir3_block *new_idom = NULL;
58 struct ir3_block *pred = block->predecessors[i];
77 calc_dfs_indices(struct ir3_block *block, unsigned index)
121 ir3_block_dominates(struct ir3_block *a, struct ir3_block *b)
H A Dir3_remove_unreachable.c33 delete_block(struct ir3 *ir, struct ir3_block *block)
59 struct ir3_block *succ = block->successors[i];
86 struct ir3_block *succ = block->physical_successors[i];
98 struct ir3_block *pred = block->physical_predecessors[0];
100 struct ir3_block *next = LIST_ENTRY(struct ir3_block, block->node.next, node);
H A Dir3_lower_subgroups.c37 replace_pred(struct ir3_block *block, struct ir3_block *old_pred,
38 struct ir3_block *new_pred)
49 replace_physical_pred(struct ir3_block *block, struct ir3_block *old_pred,
50 struct ir3_block *new_pred)
61 mov_immed(struct ir3_register *dst, struct ir3_block *block, unsigned immed)
74 static struct ir3_block *
75 split_block(struct ir3 *ir, struct ir3_block *before_block,
76 struct ir3_instruction *instr, struct ir3_block **the
[all...]
H A Dir3.h44 struct ir3_block;
233 struct ir3_block *block;
310 struct ir3_block *target;
450 /* Entry in ir3_block's instruction list: */
543 struct ir3_block { struct
569 struct ir3_block *successors[2];
570 struct ir3_block *physical_successors[2];
572 DECLARE_ARRAY(struct ir3_block *, predecessors);
573 DECLARE_ARRAY(struct ir3_block *, physical_predecessors);
589 struct ir3_block *imm_do
[all...]
H A Dir3_legalize.c83 legalize_block(struct ir3_legalize_ctx *ctx, struct ir3_block *block)
101 struct ir3_block *predecessor = block->predecessors[i];
388 apply_fine_deriv_macro(struct ir3_legalize_ctx *ctx, struct ir3_block *block)
449 static struct ir3_block *
450 resolve_dest_block(struct ir3_block *block)
486 remove_unused_block(struct ir3_block *old_target)
493 struct ir3_block *succ = old_target->successors[i];
500 retarget_jump(struct ir3_instruction *instr, struct ir3_block *new_target)
502 struct ir3_block *old_target = instr->cat0.target;
503 struct ir3_block *cur_bloc
[all...]
H A Dir3_delay.c123 distance(struct ir3_block *block, struct ir3_instruction *instr, unsigned maxd)
142 delay_calc_srcn_prera(struct ir3_block *block, struct ir3_instruction *assigner,
173 ir3_delay_calc_prera(struct ir3_block *block, struct ir3_instruction *instr)
306 delay_calc_postra(struct ir3_block *block, struct ir3_instruction *start,
367 struct ir3_block *pred = block->predecessors[i];
391 ir3_delay_calc_postra(struct ir3_block *block, struct ir3_instruction *instr,
402 ir3_delay_calc_exact(struct ir3_block *block, struct ir3_instruction *instr,
H A Dir3_context.h68 struct ir3_block *block; /* the current block */
69 struct ir3_block *in_block; /* block created for shader inputs */
143 /* maps nir_block to ir3_block, mostly for the purposes of
148 /* maps nir_block at the top of a loop to ir3_block collecting continue
207 struct ir3_instruction *ir3_create_collect(struct ir3_block *block,
210 void ir3_split_dest(struct ir3_block *block, struct ir3_instruction **dst,
H A Dir3_a6xx.c45 struct ir3_block *b = ctx->block;
68 struct ir3_block *b = ctx->block;
112 struct ir3_block *b = ctx->block;
204 struct ir3_block *b = ctx->block;
228 struct ir3_block *b = ctx->block;
257 struct ir3_block *b = ctx->block;
351 struct ir3_block *b = ctx->block;
372 struct ir3_block *b = ctx->block;
397 struct ir3_block *b = ctx->block;
H A Dir3_array_to_ssa.c62 get_state(struct array_ctx *ctx, struct ir3_block *block, unsigned id)
68 struct ir3_block *block,
72 read_value_end(struct array_ctx *ctx, struct ir3_block *block,
85 read_value_beginning(struct array_ctx *ctx, struct ir3_block *block,
198 lookup_live_in(struct array_ctx *ctx, struct ir3_block *block, unsigned id)
H A Dir3_liveness.c39 compute_block_liveness(struct ir3_liveness *live, struct ir3_block *block,
79 const struct ir3_block *pred = block->predecessors[i];
101 const struct ir3_block *pred = block->physical_predecessors[i];
H A Dir3_spill.c144 struct ir3_block *start = ir3_start_block(ir);
208 compute_block_next_distance(struct ra_spill_ctx *ctx, struct ir3_block *block,
253 const struct ir3_block *pred = block->predecessors[i];
640 struct ir3_block *block)
657 unsigned spill_slot, struct ir3_instruction *instr, struct ir3_block *block)
700 struct ir3_instruction *instr, struct ir3_block *block)
774 struct ir3_instruction *after, struct ir3_block *block)
799 struct ir3_instruction *after, struct ir3_block *block)
823 struct ir3_instruction *after, struct ir3_block *block)
866 struct ir3_block *bloc
[all...]
H A Dir3.c346 insert_instr(struct ir3_block *block, struct ir3_instruction *instr)
358 struct ir3_block *
361 struct ir3_block *block = ir3_alloc(shader, sizeof(*block));
372 ir3_block_add_predecessor(struct ir3_block *block, struct ir3_block *pred)
378 ir3_block_add_physical_predecessor(struct ir3_block *block,
379 struct ir3_block *pred)
385 ir3_block_remove_predecessor(struct ir3_block *block, struct ir3_block *pred)
401 ir3_block_remove_physical_predecessor(struct ir3_block *bloc
[all...]
H A Dir3_a4xx.c42 struct ir3_block *b = ctx->block;
69 struct ir3_block *b = ctx->block;
123 struct ir3_block *b = ctx->block;
193 struct ir3_block *b = ctx->block;
236 struct ir3_block *b = ctx->block;
261 struct ir3_block *b = ctx->block;
298 struct ir3_block *b = ctx->block;
H A Dir3_validate.c34 struct ir3_block *current_block;
106 validate_phi_src(struct ir3_validate_ctx *ctx, struct ir3_block *block,
107 struct ir3_block *pred)
350 is_physical_successor(struct ir3_block *block, struct ir3_block *succ)
H A Dir3_context.c301 ir3_create_collect(struct ir3_block *block, struct ir3_instruction *const *arr,
358 ir3_split_dest(struct ir3_block *block, struct ir3_instruction **dst,
414 create_addr0(struct ir3_block *block, struct ir3_instruction *src, int align)
453 create_addr1(struct ir3_block *block, unsigned const_val)
512 struct ir3_block *b = ctx->block;
568 struct ir3_block *block = ctx->block;
608 struct ir3_block *block = ctx->block;
/xsrc/external/mit/MesaLib.old/dist/src/freedreno/ir3/
H A Dir3.h43 struct ir3_block;
160 struct ir3_block *block;
230 struct ir3_block *target;
270 struct ir3_block *block;
369 /* Entry in ir3_block's instruction list: */
481 struct ir3_block { struct
494 struct ir3_block *successors[2];
497 struct ir3_block **predecessors;
517 block_id(struct ir3_block *block)
533 struct ir3_block * ir3_block_creat
[all...]
H A Dir3_depth.c170 remove_unused_by_block(struct ir3_block *block)
222 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
232 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
242 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
H A Dir3_legalize.c77 legalize_block(struct ir3_legalize_ctx *ctx, struct ir3_block *block)
359 static struct ir3_block *
360 resolve_dest_block(struct ir3_block *block)
389 struct ir3_block *tblock =
436 list_for_each_entry (struct ir3_block, block, &ir->block_list, node)
477 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
500 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
507 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
H A Dir3_context.h55 struct ir3_block *block; /* the current block */
56 struct ir3_block *in_block; /* block created for shader inputs */
109 /* maps nir_block to ir3_block, mostly for the purposes of
156 void ir3_split_dest(struct ir3_block *block, struct ir3_instruction **dst,
H A Dir3_sched.c53 struct ir3_block *block; /* the current block */
124 update_use_count(struct ir3_block *block)
226 distance(struct ir3_block *block, struct ir3_instruction *instr,
274 delay_calc_srcn(struct ir3_block *block,
306 delay_calc(struct ir3_block *block, struct ir3_instruction *instr,
615 sched_block(struct ir3_sched_ctx *ctx, struct ir3_block *block)
758 sched_intra_block(struct ir3_sched_ctx *ctx, struct ir3_block *block)
794 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
800 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
855 add_barrier_deps(struct ir3_block *bloc
[all...]
H A Dir3_sun.c103 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
H A Dir3_a6xx.c46 struct ir3_block *b = ctx->block;
70 struct ir3_block *b = ctx->block;
117 struct ir3_block *b = ctx->block;
209 struct ir3_block *b = ctx->block;
238 struct ir3_block *b = ctx->block;
387 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
393 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
H A Dir3_a4xx.c42 struct ir3_block *b = ctx->block;
74 struct ir3_block *b = ctx->block;
129 struct ir3_block *b = ctx->block;
213 struct ir3_block *b = ctx->block;
257 struct ir3_block *b = ctx->block;
297 struct ir3_block *b = ctx->block;
H A Dir3_ra.c529 ra_block_find_definers(struct ir3_ra_ctx *ctx, struct ir3_block *block)
579 ra_block_name_instructions(struct ir3_ra_ctx *ctx, struct ir3_block *block)
619 list_for_each_entry (struct ir3_block, block, &ctx->ir->block_list, node) {
623 list_for_each_entry (struct ir3_block, block, &ctx->ir->block_list, node) {
676 ra_block_compute_live_ranges(struct ir3_ra_ctx *ctx, struct ir3_block *block)
828 list_for_each_entry (struct ir3_block, block, &ctx->ir->block_list, node) {
844 struct ir3_block *succ = block->successors[j];
898 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
908 list_for_each_entry (struct ir3_block, block, &ir->block_list, node) {
925 list_for_each_entry (struct ir3_block, bloc
[all...]
/xsrc/external/mit/MesaLib/dist/src/freedreno/ir3/tests/
H A Ddelay.c127 struct ir3_block *block = ir3_start_block(ir);
164 struct ir3_block *block =
165 list_first_entry(&ir->block_list, struct ir3_block, node);

Completed in 23 milliseconds

12