/external/mesa3d/src/gallium/drivers/freedreno/ir3/ |
D | ir3.h | 40 struct ir3_instruction; 120 struct ir3_instruction *instr; 152 struct ir3_instruction { struct 318 struct ir3_instruction *left, *right; argument 327 struct ir3_instruction *address; argument 332 DECLARE_ARRAY(struct ir3_instruction *, deps); 371 static inline struct ir3_instruction * argument 372 ir3_neighbor_first(struct ir3_instruction *instr) in ir3_neighbor_first() 385 static inline int ir3_neighbor_count(struct ir3_instruction *instr) in ir3_neighbor_count() 407 struct ir3_instruction **inputs; [all …]
|
D | ir3_sched.c | 57 struct ir3_instruction *scheduled; /* last scheduled instr XXX remove*/ 58 struct ir3_instruction *addr; /* current a0.x user, if any */ 59 struct ir3_instruction *pred; /* current p0.x user, if any */ 63 static bool is_sfu_or_mem(struct ir3_instruction *instr) in is_sfu_or_mem() 71 clear_cache(struct ir3_sched_ctx *ctx, struct ir3_instruction *instr) in clear_cache() 73 list_for_each_entry (struct ir3_instruction, instr2, &ctx->depth_list, node) { in clear_cache() 80 schedule(struct ir3_sched_ctx *ctx, struct ir3_instruction *instr) in schedule() 118 static struct ir3_instruction * 119 deepest(struct ir3_instruction **srcs, unsigned nsrcs) in deepest() 121 struct ir3_instruction *d = NULL; in deepest() [all …]
|
D | ir3_group.c | 42 struct ir3_instruction *(*get)(void *arr, int idx); 43 void (*insert_mov)(void *arr, int idx, struct ir3_instruction *instr); 46 static struct ir3_instruction *arr_get(void *arr, int idx) in arr_get() 48 return ((struct ir3_instruction **)arr)[idx]; in arr_get() 50 static void arr_insert_mov_out(void *arr, int idx, struct ir3_instruction *instr) in arr_insert_mov_out() 52 ((struct ir3_instruction **)arr)[idx] = in arr_insert_mov_out() 55 static void arr_insert_mov_in(void *arr, int idx, struct ir3_instruction *instr) in arr_insert_mov_in() 62 struct ir3_instruction *in; in arr_insert_mov_in() 76 ((struct ir3_instruction **)arr)[idx] = in; in arr_insert_mov_in() 81 static struct ir3_instruction *instr_get(void *arr, int idx) in instr_get() [all …]
|
D | ir3_legalize.c | 68 struct ir3_instruction *last_input = NULL; in legalize_block() 69 struct ir3_instruction *last_rel = NULL; in legalize_block() 70 struct ir3_instruction *last_n = NULL; in legalize_block() 86 list_for_each_entry_safe (struct ir3_instruction, n, &instr_list, node) { in legalize_block() 155 struct ir3_instruction *nop; in legalize_block() 166 struct ir3_instruction *last = list_last_entry(&block->instr_list, in legalize_block() 167 struct ir3_instruction, node); in legalize_block() 233 struct ir3_instruction *baryf; in legalize_block() 254 list_first_entry(&block->instr_list, struct ir3_instruction, node) in legalize_block() 311 struct ir3_instruction *instr = list_first_entry( in resolve_dest_block() [all …]
|
D | ir3_compiler_nir.c | 69 struct ir3_instruction *frag_pos, *frag_face, *frag_coord[4]; 72 struct ir3_instruction *vertex_id, *basevertex, *instance_id; 75 struct ir3_instruction *local_invocation_id, *work_group_id; 96 struct ir3_instruction **last_dst; 140 static struct ir3_instruction * create_immed(struct ir3_block *block, uint32_t val); 323 static struct ir3_instruction * 325 struct ir3_instruction *address) in create_array_load() 328 struct ir3_instruction *mov; in create_array_load() 351 static struct ir3_instruction * 353 struct ir3_instruction *src, struct ir3_instruction *address) in create_array_store() [all …]
|
D | ir3_depth.c | 55 int ir3_delayslots(struct ir3_instruction *assigner, in ir3_delayslots() 56 struct ir3_instruction *consumer, unsigned n) in ir3_delayslots() 91 ir3_insert_by_depth(struct ir3_instruction *instr, struct list_head *list) in ir3_insert_by_depth() 97 list_for_each_entry (struct ir3_instruction, pos, list, node) { in ir3_insert_by_depth() 108 ir3_instr_depth(struct ir3_instruction *instr) in ir3_instr_depth() 110 struct ir3_instruction *src; in ir3_instr_depth() 142 list_for_each_entry_safe (struct ir3_instruction, instr, &block->instr_list, node) { in remove_unused_by_block() 184 struct ir3_instruction *instr = ir->indirects[i]; in ir3_depth() 191 struct ir3_instruction *in = ir->inputs[i]; in ir3_depth()
|
D | ir3_ra.c | 298 struct ir3_instruction *defn; 327 is_half(struct ir3_instruction *instr) in is_half() 333 is_high(struct ir3_instruction *instr) in is_high() 370 writes_gpr(struct ir3_instruction *instr) in writes_gpr() 379 instr_before(struct ir3_instruction *a, struct ir3_instruction *b) in instr_before() 386 static struct ir3_instruction * 387 get_definer(struct ir3_ra_ctx *ctx, struct ir3_instruction *instr, in get_definer() 391 struct ir3_instruction *d = NULL; in get_definer() 411 struct ir3_instruction *dd; in get_definer() 428 struct ir3_instruction *f = ir3_neighbor_first(instr); in get_definer() [all …]
|
D | ir3_cp.c | 45 static bool is_eligible_mov(struct ir3_instruction *instr, bool allow_flags) in is_eligible_mov() 50 struct ir3_instruction *src_instr = ssa(src); in is_eligible_mov() 92 static bool valid_flags(struct ir3_instruction *instr, unsigned n, in valid_flags() 222 static void combine_flags(unsigned *dstflags, struct ir3_instruction *src) in combine_flags() 257 struct ir3_instruction *srcsrc = ssa(src->regs[1]); in combine_flags() 326 reg_cp(struct ir3_cp_ctx *ctx, struct ir3_instruction *instr, in reg_cp() 329 struct ir3_instruction *src = ssa(reg); in reg_cp() 486 static struct ir3_instruction * 487 eliminate_output_mov(struct ir3_instruction *instr) in eliminate_output_mov() 492 struct ir3_instruction *src_instr = ssa(reg); in eliminate_output_mov() [all …]
|
D | ir3.c | 121 static int emit_cat0(struct ir3_instruction *instr, void *ptr, in emit_cat0() 150 static int emit_cat1(struct ir3_instruction *instr, void *ptr, in emit_cat1() 195 static int emit_cat2(struct ir3_instruction *instr, void *ptr, in emit_cat2() 275 static int emit_cat3(struct ir3_instruction *instr, void *ptr, in emit_cat3() 368 static int emit_cat4(struct ir3_instruction *instr, void *ptr, in emit_cat4() 416 static int emit_cat5(struct ir3_instruction *instr, void *ptr, in emit_cat5() 472 static int emit_cat6(struct ir3_instruction *instr, void *ptr, in emit_cat6() 651 static int emit_cat7(struct ir3_instruction *instr, void *ptr, in emit_cat7() 669 static int (*emit[])(struct ir3_instruction *instr, void *ptr, 688 list_for_each_entry (struct ir3_instruction, instr, &block->instr_list, node) { in ir3_assemble() [all …]
|
D | ir3_print.c | 36 static void print_instr_name(struct ir3_instruction *instr) in print_instr_name() 153 print_instr(struct ir3_instruction *instr, int lvl) in print_instr() 202 void ir3_print_instr(struct ir3_instruction *instr) in ir3_print_instr() 211 list_for_each_entry (struct ir3_instruction, instr, &block->instr_list, node) { in print_block()
|
D | disasm-a3xx.c | 963 const char *ir3_instr_name(struct ir3_instruction *instr) in ir3_instr_name()
|
/external/mesa3d/src/gallium/docs/source/drivers/freedreno/ |
D | ir3-notes.rst | 106 ``ir3_instruction`` 127 Iterate each instruction's SSA source ``ir3_instruction``\s. This skips
|