Home
last modified time | relevance | path

Searched refs:nir_instr (Results 1 – 25 of 224) sorted by relevance

123456789

/third_party/mesa3d/src/gallium/drivers/r600/sfn/
Dsfn_nir_lower_alu.cpp8 bool filter(const nir_instr *instr) const override;
9 nir_ssa_def *lower(nir_instr *instr) override;
13 bool Lower2x16::filter(const nir_instr *instr) const in filter()
27 nir_ssa_def *Lower2x16::lower(nir_instr *instr) in lower()
50 bool filter(const nir_instr *instr) const override;
51 nir_ssa_def *lower(nir_instr *instr) override;
54 bool LowerSinCos::filter(const nir_instr *instr) const in filter()
69 nir_ssa_def *LowerSinCos::lower(nir_instr *instr) in lower()
Dsfn_nir_vectorize_vs_inputs.c76 r600_instr_can_rewrite(nir_instr *instr) in r600_instr_can_rewrite()
97 r600_io_access_same_var(const nir_instr *instr1, const nir_instr *instr2) in r600_io_access_same_var()
129 r600_vec_instr_stack_push(struct util_dynarray *stack, nir_instr *instr) in r600_vec_instr_stack_push()
131 util_dynarray_append(stack, nir_instr *, instr); in r600_vec_instr_stack_push()
178 nir_instr *instr, in r600_vec_instr_stack_pop()
181 nir_instr *last = util_dynarray_pop(stack, nir_instr *); in r600_vec_instr_stack_pop()
220 const nir_instr *instr1 = *(nir_instr **)util_dynarray_begin(arr1); in r600_cmp_func()
221 const nir_instr *instr2 = *(nir_instr **)util_dynarray_begin(arr2); in r600_cmp_func()
229 r600_hash_instr(const nir_instr *instr) in r600_hash_instr()
247 const nir_instr *first = *(nir_instr **)util_dynarray_begin(stack); in r600_hash_stack()
[all …]
Dsfn_nir.h46 static bool filter_instr(const nir_instr *instr, const void *data);
47 static nir_ssa_def *lower_instr(nir_builder *b, nir_instr *instr, void *data);
51 virtual bool filter(const nir_instr *instr) const = 0;
52 virtual nir_ssa_def *lower(nir_instr *instr) = 0;
88 bool emit_instruction(nir_instr *instr);
151 bool r600_lower_to_scalar_instr_filter(const nir_instr *instr, const void *);
Dsfn_shader_base.h51 struct nir_instr;
103 bool scan_instruction(nir_instr *instr);
105 virtual bool scan_sysvalue_access(nir_instr *instr) = 0;
158 bool emit_alu_instruction(nir_instr *instr);
162 bool emit_tex_instruction(nir_instr* instr);
/third_party/mesa3d/src/compiler/nir/
Dnir_worklist.h111 if (!u_vector_init_pow2(&wl->instr_vec, 8, sizeof(struct nir_instr *))) { in nir_instr_worklist_create()
139 nir_instr_worklist_push_tail(nir_instr_worklist *wl, nir_instr *instr) in nir_instr_worklist_push_tail()
141 struct nir_instr **vec_instr = u_vector_add(&wl->instr_vec); in nir_instr_worklist_push_tail()
145 static inline nir_instr *
148 struct nir_instr **vec_instr = u_vector_remove(&wl->instr_vec); in nir_instr_worklist_pop_head()
157 nir_instr_worklist_add_ssa_srcs(nir_instr_worklist *wl, nir_instr *instr);
160 for (nir_instr *instr; (instr = nir_instr_worklist_pop_head(wl));)
Dnir_opt_gcm.c61 nir_instr *last_instr;
79 nir_instr *instr;
166 nir_instr *src_instr = src->ssa->parent_instr; in is_src_scalarizable()
243 nir_instr *instr = &intrin->instr; in pin_intrinsic()
408 gcm_schedule_early_instr(nir_instr *instr, struct gcm_state *state);
421 nir_instr *instr = state->instr; in gcm_schedule_early_src()
459 gcm_schedule_early_instr(nir_instr *instr, struct gcm_state *state) in gcm_schedule_early_instr()
486 set_block_for_loop_instr(struct gcm_state *state, nir_instr *instr, in set_block_for_loop_instr()
532 gcm_choose_block_for_instr(nir_instr *instr, nir_block *early_block, in gcm_choose_block_for_instr()
554 gcm_schedule_late_instr(nir_instr *instr, struct gcm_state *state);
[all …]
Dnir.h108 struct nir_instr;
769 typedef struct nir_instr { struct
782 } nir_instr; argument
784 static inline nir_instr *
785 nir_instr_next(nir_instr *instr) in nir_instr_next()
791 return exec_node_data(nir_instr, next, node); in nir_instr_next()
794 static inline nir_instr *
795 nir_instr_prev(nir_instr *instr) in nir_instr_prev()
801 return exec_node_data(nir_instr, prev, node); in nir_instr_prev()
805 nir_instr_is_first(const nir_instr *instr) in nir_instr_is_first()
[all …]
Dnir_instr_set.h58 bool nir_instr_set_add_or_rewrite(struct set *instr_set, nir_instr *instr,
59 bool (*cond_function)(const nir_instr *a,
60 const nir_instr *b));
66 void nir_instr_set_remove(struct set *instr_set, nir_instr *instr);
Dnir_opt_vectorize.c61 const nir_instr *instr = (nir_instr *) data; in hash_instr()
105 const nir_instr *instr1 = (nir_instr *) data1; in instrs_equal()
106 const nir_instr *instr2 = (nir_instr *) data2; in instrs_equal()
128 instr_can_rewrite(nir_instr *instr, bool vectorize_16bit) in instr_can_rewrite()
183 static nir_instr *
185 nir_instr *instr1, nir_instr *instr2) in instr_try_combine()
273 nir_instr *user_instr = src->parent_instr; in instr_try_combine()
356 nir_instr *instr, in vec_instr_set_add_or_rewrite()
370 nir_instr *old_instr = (nir_instr *) entry->key; in vec_instr_set_add_or_rewrite()
372 nir_instr *new_instr = instr_try_combine(nir, instr_set, in vec_instr_set_add_or_rewrite()
Dnir_lower_mediump.c32 get_io_intrinsic(nir_instr *instr, nir_variable_mode modes, in get_io_intrinsic()
358 is_n_to_m_conversion(nir_instr *instr, unsigned n, nir_op m) in is_n_to_m_conversion()
368 is_f16_to_f32_conversion(nir_instr *instr) in is_f16_to_f32_conversion()
374 is_f32_to_f16_conversion(nir_instr *instr) in is_f32_to_f16_conversion()
382 is_i16_to_i32_conversion(nir_instr *instr) in is_i16_to_i32_conversion()
388 is_u16_to_u32_conversion(nir_instr *instr) in is_u16_to_u32_conversion()
394 is_i32_to_i16_conversion(nir_instr *instr) in is_i32_to_i16_conversion()
400 replace_with_mov(nir_builder *b, nir_instr *instr, nir_src *src, in replace_with_mov()
437 nir_instr *src; in nir_fold_16bit_sampler_conversions()
473 nir_instr *instr = src_alu->src[comp].src.ssa->parent_instr; in nir_fold_16bit_sampler_conversions()
[all …]
Dnir_loop_analyze.h33 contains_other_jump(nir_cf_node *node, nir_instr *expected_jump) in contains_other_jump()
37 nir_instr *lst_instr = nir_block_last_instr(nir_cf_node_as_block(node)); in contains_other_jump()
82 nir_instr *last_instr = NULL; in nir_is_trivial_loop_if()
Dnir_lower_shader_calls.c70 instr_is_shader_call(nir_instr *instr) in instr_is_shader_call()
126 can_remat_instr(nir_instr *instr, struct brw_bitset *remat) in can_remat_instr()
215 nir_instr *clone = nir_instr_clone(b->shader, def->parent_instr); in remat_ssa_def()
606 static nir_instr *
632 duplicate_loop_bodies(nir_function_impl *impl, nir_instr *resume_instr) in duplicate_loop_bodies()
697 cf_node_contains_instr(nir_cf_node *node, nir_instr *instr) in cf_node_contains_instr()
796 nir_instr *cursor, in flatten_resume_if_ladder()
799 nir_instr *resume_instr, in flatten_resume_if_ladder()
876 nir_instr *loop_cursor = in flatten_resume_if_ladder()
958 static nir_instr *
[all …]
Dnir_instr_set.c43 instr_each_src_and_dest_is_ssa(const nir_instr *instr) in instr_each_src_and_dest_is_ssa()
45 if (!nir_foreach_dest((nir_instr *)instr, dest_is_ssa, NULL) || in instr_each_src_and_dest_is_ssa()
46 !nir_foreach_src((nir_instr *)instr, src_is_ssa, NULL)) in instr_each_src_and_dest_is_ssa()
59 instr_can_rewrite(const nir_instr *instr) in instr_can_rewrite()
297 const nir_instr *instr = data; in hash_instr()
549 nir_instrs_equal(const nir_instr *instr1, const nir_instr *instr2) in nir_instrs_equal()
761 nir_instr_get_dest_ssa_def(nir_instr *instr) in nir_instr_get_dest_ssa_def()
805 nir_instr_set_add_or_rewrite(struct set *instr_set, nir_instr *instr, in nir_instr_set_add_or_rewrite()
806 bool (*cond_function) (const nir_instr *a, in nir_instr_set_add_or_rewrite()
807 const nir_instr *b)) in nir_instr_set_add_or_rewrite()
[all …]
Dnir_lower_discard_or_demote.c29 nir_lower_discard_to_demote_instr(nir_builder *b, nir_instr *instr, void *data) in nir_lower_discard_to_demote_instr()
51 nir_lower_demote_to_discard_instr(nir_builder *b, nir_instr *instr, void *data) in nir_lower_demote_to_discard_instr()
80 insert_is_helper(nir_builder *b, nir_instr *instr) in insert_is_helper()
97 nir_lower_load_helper_to_is_helper(nir_builder *b, nir_instr *instr, void *data) in nir_lower_load_helper_to_is_helper()
Dnir_opt_trivial_continues.c27 instr_is_continue(nir_instr *instr) in instr_is_continue()
39 nir_instr *first_instr = nir_block_first_instr(block); in lower_trivial_continues_block()
60 nir_instr *last_instr = nir_block_last_instr(block); in lower_trivial_continues_block()
Dnir.c109 list_for_each_entry_safe(nir_instr, instr, &shader->gc_list, gc_node) { in nir_shader_destructor()
571 instr_init(nir_instr *instr, nir_instr_type type) in instr_init()
952 nir_instr *prev_instr = nir_instr_prev(cursor.instr); in reduce_cursor()
991 nir_instr *instr = state; in add_use_cb()
1003 nir_instr *instr = state; in add_ssa_def_cb()
1020 nir_instr *instr = state; in add_reg_def_cb()
1031 add_defs_uses(nir_instr *instr) in add_defs_uses()
1039 nir_instr_insert(nir_cursor cursor, nir_instr *instr) in nir_instr_insert()
1053 nir_instr *last = nir_block_last_instr(cursor.block); in nir_instr_insert()
1090 nir_instr_move(nir_cursor cursor, nir_instr *instr) in nir_instr_move()
[all …]
Dnir_opt_move.c55 move_source(nir_src *src, nir_block *block, nir_instr *before, nir_move_options options) in move_source()
60 nir_instr *src_instr = src->ssa->parent_instr; in move_source()
85 nir_instr *instr = src->parent_instr; in move_source_cb()
Dnir_opt_cse.c36 dominates(const nir_instr *old_instr, const nir_instr *new_instr) in dominates()
Dnir_opt_phi_precision.c110 narrowing_conversion_op(nir_instr *instr, nir_op current_op) in narrowing_conversion_op()
156 widening_conversion_op(nir_instr *instr, unsigned *bit_size) in widening_conversion_op()
314 nir_instr *instr = src->src.ssa->parent_instr; in find_widening_op()
352 nir_instr *instr = src->src.ssa->parent_instr; in find_widening_op()
391 nir_instr *instr = src->src.ssa->parent_instr; in try_move_widening_src()
Dnir_liveness.c280 search_for_use_after_instr(nir_instr *start, nir_ssa_def *def) in search_for_use_after_instr()
285 nir_instr *instr = exec_node_data(nir_instr, node, node); in search_for_use_after_instr()
306 nir_ssa_def_is_live_at(nir_ssa_def *def, nir_instr *instr) in nir_ssa_def_is_live_at()
352 nir_instr *instr = def->parent_instr; in def_cb()
Dnir_lower_fragcoord_wtrans.c36 lower_fragcoord_wtrans_filter(const nir_instr *instr, UNUSED const void *_options) in lower_fragcoord_wtrans_filter()
56 lower_fragcoord_wtrans_impl(nir_builder *b, nir_instr *instr, in lower_fragcoord_wtrans_impl()
/third_party/mesa3d/src/freedreno/ir3/
Dir3_nir_move_varying_inputs.c58 static void check_precondition_instr(precond_state *state, nir_instr *instr);
59 static void move_instruction_to_start_block(state *state, nir_instr *instr);
72 check_precondition_instr(precond_state *state, nir_instr *instr) in check_precondition_instr()
134 move_instruction_to_start_block(state *state, nir_instr *instr) in move_instruction_to_start_block()
/third_party/mesa3d/src/gallium/drivers/etnaviv/
Detnaviv_compiler_nir.h73 static inline bool is_sysval(nir_instr *instr) in is_sysval()
130 nir_instr *p_instr = dest->ssa.parent_instr; in real_dest()
137 nir_instr *instr = use_src->parent_instr; in real_dest()
202 dest_for_instr(nir_instr *instr) in dest_for_instr()
231 nir_instr *instr;
/third_party/mesa3d/src/amd/common/
Dac_nir_lower_tess_io_to_mem.c199 nir_instr *instr, in lower_ls_output_store()
238 filter_load_tcs_per_vertex_input(const nir_instr *instr, in filter_load_tcs_per_vertex_input()
257 nir_instr *vertex_index_instr = vertex_index_src->ssa->parent_instr; in filter_load_tcs_per_vertex_input()
375 nir_instr *instr, in lower_hs_per_vertex_input_load()
449 nir_instr *instr, in lower_hs_output_access()
578 nir_instr *instr, in lower_tes_input_load()
594 filter_hs_output_access(const nir_instr *instr, in filter_hs_output_access()
609 filter_any_input_access(const nir_instr *instr, in filter_any_input_access()
716 filter_const_lowerable_tess_intrinsics(const nir_instr *instr, in filter_const_lowerable_tess_intrinsics()
730 nir_instr *instr, in lower_tess_intrinsics_to_const()
/third_party/mesa3d/src/gallium/frontends/lavapipe/
Dlvp_lower_vulkan_resource.c30 lower_vulkan_resource_index(const nir_instr *instr, const void *data_cb) in lower_vulkan_resource_index()
51 nir_instr *instr, void *data_cb) in lower_vri_intrin_vri()
86 nir_instr *instr, void *data_cb) in lower_vri_intrin_vrri()
96 nir_instr *instr, void *data_cb) in lower_vri_intrin_lvd()
174 nir_instr *instr, void *data_cb) in lower_vri_instr()

123456789