Home
last modified time | relevance | path

Searched refs:intr (Results 1 - 25 of 159) sorted by relevance

1234567

/third_party/mesa3d/src/compiler/nir/
H A Dnir_lower_io_to_scalar.c44 lower_load_input_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_input_to_scalar() argument
46 b->cursor = nir_before_instr(&intr->instr); in lower_load_input_to_scalar()
48 assert(intr->dest.is_ssa); in lower_load_input_to_scalar()
52 for (unsigned i = 0; i < intr->num_components; i++) { in lower_load_input_to_scalar()
54 nir_intrinsic_instr_create(b->shader, intr->intrinsic); in lower_load_input_to_scalar()
56 1, intr->dest.ssa.bit_size, NULL); in lower_load_input_to_scalar()
59 nir_intrinsic_set_base(chan_intr, nir_intrinsic_base(intr)); in lower_load_input_to_scalar()
60 nir_intrinsic_set_component(chan_intr, nir_intrinsic_component(intr) + i); in lower_load_input_to_scalar()
61 nir_intrinsic_set_dest_type(chan_intr, nir_intrinsic_dest_type(intr)); in lower_load_input_to_scalar()
62 set_io_semantics(chan_intr, intr, in lower_load_input_to_scalar()
78 lower_load_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) lower_load_to_scalar() argument
125 lower_store_output_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) lower_store_output_to_scalar() argument
183 lower_store_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) lower_store_to_scalar() argument
321 lower_load_to_scalar_early(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var, struct hash_table *split_inputs, struct hash_table *split_outputs) lower_load_to_scalar_early() argument
380 lower_store_output_to_scalar_early(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var, struct hash_table *split_outputs) lower_store_output_to_scalar_early() argument
[all...]
H A Dnir_lower_wrmasks.c95 split_wrmask(nir_builder *b, nir_intrinsic_instr *intr) in split_wrmask() argument
97 const nir_intrinsic_info *info = &nir_intrinsic_infos[intr->intrinsic]; in split_wrmask()
99 b->cursor = nir_before_instr(&intr->instr); in split_wrmask()
104 unsigned value_idx = value_src(intr->intrinsic); in split_wrmask()
105 unsigned offset_idx = offset_src(intr->intrinsic); in split_wrmask()
106 unsigned num_comp = nir_intrinsic_src_components(intr, value_idx); in split_wrmask()
108 unsigned wrmask = nir_intrinsic_write_mask(intr); in split_wrmask()
113 nir_ssa_def *value = nir_ssa_for_src(b, intr->src[value_idx], num_comp); in split_wrmask()
114 nir_ssa_def *offset = nir_ssa_for_src(b, intr->src[offset_idx], 1); in split_wrmask()
124 nir_intrinsic_instr_create(b->shader, intr in split_wrmask()
[all...]
H A Dnir_lower_io_arrays_to_elements.c113 lower_array(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var, in lower_array() argument
116 b->cursor = nir_before_instr(&intr->instr); in lower_array()
118 if (nir_deref_instr_is_known_out_of_bounds(nir_src_as_deref(intr->src[0]))) { in lower_array()
120 if (intr->intrinsic != nir_intrinsic_store_deref) { in lower_array()
121 nir_ssa_def *zero = nir_imm_zero(b, intr->dest.ssa.num_components, in lower_array()
122 intr->dest.ssa.bit_size); in lower_array()
123 nir_ssa_def_rewrite_uses(&intr->dest.ssa, in lower_array()
126 nir_instr_remove(&intr->instr); in lower_array()
136 unsigned io_offset = get_io_offset(b, nir_src_as_deref(intr->src[0]), in lower_array()
173 nir_intrinsic_instr_create(b->shader, intr in lower_array()
240 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); create_indirects_mask() local
286 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_io_arrays_to_elements() local
[all...]
H A Dnir_lower_ubo_vec4.c88 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in nir_lower_ubo_vec4_lower() local
90 nir_ssa_def *byte_offset = nir_ssa_for_src(b, intr->src[1], 1); in nir_lower_ubo_vec4_lower()
93 unsigned align_mul = nir_intrinsic_align_mul(intr); in nir_lower_ubo_vec4_lower()
94 unsigned align_offset = nir_intrinsic_align_offset(intr); in nir_lower_ubo_vec4_lower()
96 int chan_size_bytes = intr->dest.ssa.bit_size / 8; in nir_lower_ubo_vec4_lower()
106 unsigned num_components = intr->num_components; in nir_lower_ubo_vec4_lower()
112 nir_intrinsic_instr *load = create_load(b, intr->src[0].ssa, vec4_offset, in nir_lower_ubo_vec4_lower()
113 intr->dest.ssa.bit_size, in nir_lower_ubo_vec4_lower()
116 nir_intrinsic_set_access(load, nir_intrinsic_access(intr)); in nir_lower_ubo_vec4_lower()
126 } else if (intr in nir_lower_ubo_vec4_lower()
[all...]
H A Dnir_lower_ssbo.c103 lower_ssbo_instr(nir_builder *b, nir_intrinsic_instr *intr) in lower_ssbo_instr() argument
105 nir_intrinsic_op op = lower_ssbo_op(intr->intrinsic); in lower_ssbo_instr()
114 nir_src index = intr->src[is_store ? 1 : 0]; in lower_ssbo_instr()
115 nir_src *offset_src = nir_get_io_offset_src(intr); in lower_ssbo_instr()
128 global->num_components = intr->num_components; in lower_ssbo_instr()
132 nir_intrinsic_set_align_mul(global, nir_intrinsic_align_mul(intr)); in lower_ssbo_instr()
133 nir_intrinsic_set_align_offset(global, nir_intrinsic_align_offset(intr)); in lower_ssbo_instr()
137 nir_src_copy(&global->src[0], &intr->src[0]); in lower_ssbo_instr()
138 nir_intrinsic_set_write_mask(global, nir_intrinsic_write_mask(intr)); in lower_ssbo_instr()
141 intr in lower_ssbo_instr()
161 const nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); should_lower_ssbo_instr() local
204 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); nir_lower_ssbo() local
[all...]
H A Dnir_lower_interpolation.c47 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in nir_lower_interpolation_block() local
49 if (intr->intrinsic != nir_intrinsic_load_interpolated_input) in nir_lower_interpolation_block()
52 assert(intr->dest.is_ssa); in nir_lower_interpolation_block()
53 assert(intr->src[0].is_ssa); in nir_lower_interpolation_block()
54 assert(intr->src[1].is_ssa); in nir_lower_interpolation_block()
57 nir_instr_as_intrinsic(intr->src[0].ssa->parent_instr); in nir_lower_interpolation_block()
60 if (nir_intrinsic_base(intr) == VARYING_SLOT_POS) in nir_lower_interpolation_block()
104 for (int i = 0; i < intr->num_components; i++) { in nir_lower_interpolation_block()
106 nir_load_fs_input_interp_deltas(b, 32, intr->src[1].ssa, in nir_lower_interpolation_block()
107 .base = nir_intrinsic_base(intr), in nir_lower_interpolation_block()
[all...]
/third_party/mesa3d/src/freedreno/ir3/
H A Dir3_a6xx.c42 emit_intrinsic_load_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr, in emit_intrinsic_load_ssbo() argument
49 offset = ir3_get_src(ctx, &intr->src[2])[0]; in emit_intrinsic_load_ssbo()
51 ldib = ir3_LDIB(b, ir3_ssbo_to_ibo(ctx, intr->src[0]), 0, offset, 0); in emit_intrinsic_load_ssbo()
52 ldib->dsts[0]->wrmask = MASK(intr->num_components); in emit_intrinsic_load_ssbo()
53 ldib->cat6.iim_val = intr->num_components; in emit_intrinsic_load_ssbo()
55 ldib->cat6.type = intr->dest.ssa.bit_size == 16 ? TYPE_U16 : TYPE_U32; in emit_intrinsic_load_ssbo()
58 ir3_handle_bindless_cat6(ldib, intr->src[0]); in emit_intrinsic_load_ssbo()
59 ir3_handle_nonuniform(ldib, intr); in emit_intrinsic_load_ssbo()
61 ir3_split_dest(b, dst, ldib, 0, intr->num_components); in emit_intrinsic_load_ssbo()
66 emit_intrinsic_store_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr) in emit_intrinsic_store_ssbo() argument
110 emit_intrinsic_atomic_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_ssbo() argument
201 emit_intrinsic_load_image(struct ir3_context *ctx, nir_intrinsic_instr *intr, struct ir3_instruction **dst) emit_intrinsic_load_image() argument
226 emit_intrinsic_store_image(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_store_image() argument
255 emit_intrinsic_atomic_image(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_image() argument
348 emit_intrinsic_image_size(struct ir3_context *ctx, nir_intrinsic_instr *intr, struct ir3_instruction **dst) emit_intrinsic_image_size() argument
368 emit_intrinsic_load_global_ir3(struct ir3_context *ctx, nir_intrinsic_instr *intr, struct ir3_instruction **dst) emit_intrinsic_load_global_ir3() argument
405 emit_intrinsic_store_global_ir3(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_store_global_ir3() argument
445 emit_intrinsic_atomic_global(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_global() argument
[all...]
H A Dir3_nir_lower_64b.c41 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_64b_intrinsics_filter()
43 if (intr->intrinsic == nir_intrinsic_load_deref || in lower_64b_intrinsics_filter()
44 intr->intrinsic == nir_intrinsic_store_deref) in lower_64b_intrinsics_filter()
47 if (is_intrinsic_store(intr->intrinsic)) in lower_64b_intrinsics_filter()
48 return nir_src_bit_size(intr->src[0]) == 64; in lower_64b_intrinsics_filter()
50 if (nir_intrinsic_dest_components(intr) == 0) in lower_64b_intrinsics_filter()
53 return nir_dest_bit_size(intr->dest) == 64; in lower_64b_intrinsics_filter()
61 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_64b_intrinsics() local
67 if (is_intrinsic_store(intr->intrinsic)) { in lower_64b_intrinsics()
69 switch (intr in lower_64b_intrinsics()
257 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_64b_global() local
[all...]
H A Dir3_a4xx.c70 emit_intrinsic_load_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr, in emit_intrinsic_load_ssbo() argument
76 struct ir3_instruction *ssbo = ir3_ssbo_to_ibo(ctx, intr->src[0]); in emit_intrinsic_load_ssbo()
78 byte_offset = ir3_get_src(ctx, &intr->src[1])[0]; in emit_intrinsic_load_ssbo()
79 offset = ir3_get_src(ctx, &intr->src[2])[0]; in emit_intrinsic_load_ssbo()
82 src0 = byte_offset_to_address(ctx, &intr->src[0], byte_offset); in emit_intrinsic_load_ssbo()
86 ldgb->dsts[0]->wrmask = MASK(intr->num_components); in emit_intrinsic_load_ssbo()
87 ldgb->cat6.iim_val = intr->num_components; in emit_intrinsic_load_ssbo()
93 ir3_split_dest(b, dst, ldgb, 0, intr->num_components); in emit_intrinsic_load_ssbo()
98 emit_intrinsic_store_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr) in emit_intrinsic_store_ssbo() argument
102 unsigned wrmask = nir_intrinsic_write_mask(intr); in emit_intrinsic_store_ssbo()
152 emit_intrinsic_atomic_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_ssbo() argument
280 emit_intrinsic_load_image(struct ir3_context *ctx, nir_intrinsic_instr *intr, struct ir3_instruction **dst) emit_intrinsic_load_image() argument
328 emit_intrinsic_store_image(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_store_image() argument
365 emit_intrinsic_atomic_image(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_image() argument
428 emit_intrinsic_atomic_global(struct ir3_context *ctx, nir_intrinsic_instr *intr) emit_intrinsic_atomic_global() argument
[all...]
H A Dir3_nir_lower_wide_load_store.c39 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_wide_load_store_filter()
41 if (is_intrinsic_store(intr->intrinsic)) in lower_wide_load_store_filter()
42 return nir_intrinsic_src_components(intr, 0) > 4; in lower_wide_load_store_filter()
44 if (is_intrinsic_load(intr->intrinsic)) in lower_wide_load_store_filter()
45 return nir_intrinsic_dest_components(intr) > 4; in lower_wide_load_store_filter()
55 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_wide_load_store() local
57 if (is_intrinsic_store(intr->intrinsic)) { in lower_wide_load_store()
58 unsigned num_comp = nir_intrinsic_src_components(intr, 0); in lower_wide_load_store()
59 unsigned wrmask = nir_intrinsic_write_mask(intr); in lower_wide_load_store()
60 nir_ssa_def *val = nir_ssa_for_src(b, intr in lower_wide_load_store()
[all...]
H A Dir3_nir_lower_tess.c164 replace_intrinsic(nir_builder *b, nir_intrinsic_instr *intr, in replace_intrinsic() argument
176 new_intr->num_components = intr->num_components; in replace_intrinsic()
179 nir_ssa_dest_init(&new_intr->instr, &new_intr->dest, intr->num_components, in replace_intrinsic()
180 intr->dest.ssa.bit_size, NULL); in replace_intrinsic()
185 nir_ssa_def_rewrite_uses(&intr->dest.ssa, &new_intr->dest.ssa); in replace_intrinsic()
187 nir_instr_remove(&intr->instr); in replace_intrinsic()
255 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_block_to_explicit_output() local
257 switch (intr->intrinsic) { in lower_block_to_explicit_output()
267 util_is_power_of_two_nonzero(nir_intrinsic_write_mask(intr) + 1)); in lower_block_to_explicit_output()
269 b->cursor = nir_instr_remove(&intr in lower_block_to_explicit_output()
331 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_block_to_explicit_input() local
521 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_tess_ctrl_block() local
752 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_tess_eval_block() local
868 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_gs_block() local
[all...]
/third_party/mesa3d/src/broadcom/compiler/
H A Dv3d_nir_lower_load_store_bitsize.c72 nir_intrinsic_instr *intr, in init_scalar_intrinsic()
80 nir_intrinsic_instr_create(b->shader, intr->intrinsic); in init_scalar_intrinsic()
82 nir_intrinsic_copy_const_indices(new_intr, intr); in init_scalar_intrinsic()
87 if (nir_intrinsic_has_align_mul(intr)) { in init_scalar_intrinsic()
88 assert(nir_intrinsic_has_align_offset(intr)); in init_scalar_intrinsic()
89 unsigned align_mul = nir_intrinsic_align_mul(intr); in init_scalar_intrinsic()
90 unsigned align_off = nir_intrinsic_align_offset(intr); in init_scalar_intrinsic()
100 if (nir_intrinsic_has_base(intr)) { in init_scalar_intrinsic()
102 new_intr, nir_intrinsic_base(intr) + offset_adj); in init_scalar_intrinsic()
118 nir_intrinsic_instr *intr) in lower_load_bitsize()
71 init_scalar_intrinsic(nir_builder *b, nir_intrinsic_instr *intr, uint32_t component, nir_ssa_def *offset, uint32_t bit_size, nir_ssa_def **scalar_offset) init_scalar_intrinsic() argument
116 lower_load_bitsize(struct v3d_compile *c, nir_builder *b, nir_intrinsic_instr *intr) lower_load_bitsize() argument
172 lower_store_bitsize(struct v3d_compile *c, nir_builder *b, nir_intrinsic_instr *intr) lower_store_bitsize() argument
[all...]
/third_party/mesa3d/src/imagination/rogue/nir/
H A Drogue_nir_lower_io.c34 nir_intrinsic_instr *intr, in lower_vulkan_resource_index()
37 unsigned desc_set = nir_intrinsic_desc_set(intr); in lower_vulkan_resource_index()
38 unsigned binding = nir_intrinsic_binding(intr); in lower_vulkan_resource_index()
44 nir_ssa_def_rewrite_uses(&intr->dest.ssa, def); in lower_vulkan_resource_index()
45 nir_instr_remove(&intr->instr); in lower_vulkan_resource_index()
49 nir_intrinsic_instr *intr) in lower_load_vulkan_descriptor()
55 nir_ssa_def_rewrite_uses(&intr->dest.ssa, intr->src[0].ssa); in lower_load_vulkan_descriptor()
56 nir_instr_remove(&intr->instr); in lower_load_vulkan_descriptor()
59 static void lower_load_ubo_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_ubo_to_scalar() argument
33 lower_vulkan_resource_index(nir_builder *b, nir_intrinsic_instr *intr, void *pipeline_layout) lower_vulkan_resource_index() argument
48 lower_load_vulkan_descriptor(nir_builder *b, nir_intrinsic_instr *intr) lower_load_vulkan_descriptor() argument
[all...]
/third_party/mesa3d/src/microsoft/clc/
H A Dclc_nir.c35 lower_load_base_global_invocation_id(nir_builder *b, nir_intrinsic_instr *intr, in lower_load_base_global_invocation_id() argument
38 b->cursor = nir_after_instr(&intr->instr); in lower_load_base_global_invocation_id()
45 nir_dest_num_components(intr->dest), in lower_load_base_global_invocation_id()
46 nir_dest_bit_size(intr->dest)); in lower_load_base_global_invocation_id()
47 nir_ssa_def_rewrite_uses(&intr->dest.ssa, offset); in lower_load_base_global_invocation_id()
48 nir_instr_remove(&intr->instr); in lower_load_base_global_invocation_id()
53 lower_load_work_dim(nir_builder *b, nir_intrinsic_instr *intr, in lower_load_work_dim() argument
56 b->cursor = nir_after_instr(&intr->instr); in lower_load_work_dim()
63 nir_dest_num_components(intr->dest), in lower_load_work_dim()
64 nir_dest_bit_size(intr in lower_load_work_dim()
71 lower_load_num_workgroups(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var) lower_load_num_workgroups() argument
89 lower_load_base_workgroup_id(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var) lower_load_base_workgroup_id() argument
124 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); clc_nir_lower_system_values() local
149 lower_load_kernel_input(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *var) lower_load_kernel_input() argument
206 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); clc_nir_lower_kernel_input_loads() local
[all...]
/third_party/mesa3d/src/imagination/rogue/
H A Drogue.c394 nir_intrinsic_instr *intr) in trans_nir_intrinsic_load_input_fs()
399 assert(nir_dest_num_components(intr->dest) == 1); in trans_nir_intrinsic_load_input_fs()
400 assert(nir_dest_bit_size(intr->dest) == 32); in trans_nir_intrinsic_load_input_fs()
402 assert(nir_src_num_components(intr->src[0]) == 1); in trans_nir_intrinsic_load_input_fs()
403 assert(nir_src_bit_size(intr->src[0]) == 32); in trans_nir_intrinsic_load_input_fs()
404 assert(nir_intr_src_is_const(intr, 0)); in trans_nir_intrinsic_load_input_fs()
407 assert(nir_intrinsic_dest_type(intr) == nir_type_float32); in trans_nir_intrinsic_load_input_fs()
409 struct nir_io_semantics io_semantics = nir_intrinsic_io_semantics(intr); in trans_nir_intrinsic_load_input_fs()
410 size_t component = nir_intrinsic_component(intr); in trans_nir_intrinsic_load_input_fs()
416 uint64_t source_count = nir_dest_num_components(intr in trans_nir_intrinsic_load_input_fs()
393 trans_nir_intrinsic_load_input_fs(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_load_input_fs() argument
444 trans_nir_intrinsic_load_input_vs(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_load_input_vs() argument
478 trans_nir_intrinsic_load_input(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_load_input() argument
495 trans_nir_intrinsic_store_output_fs(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_store_output_fs() argument
530 trans_nir_intrinsic_store_output_vs(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_store_output_vs() argument
564 trans_nir_intrinsic_store_output(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_store_output() argument
581 trans_nir_intrinsic_load_ubo(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic_load_ubo() argument
621 trans_nir_intrinsic(struct rogue_shader *shader, nir_intrinsic_instr *intr) trans_nir_intrinsic() argument
653 ASSERTED nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); trans_nir_load_const() local
[all...]
H A Drogue_nir_helpers.h87 static inline unsigned nir_intr_dest_regindex(const nir_intrinsic_instr *intr) in nir_intr_dest_regindex() argument
89 assert(!intr->dest.is_ssa); in nir_intr_dest_regindex()
91 return intr->dest.reg.reg->index; in nir_intr_dest_regindex()
94 static inline unsigned nir_intr_src_regindex(const nir_intrinsic_instr *intr, in nir_intr_src_regindex() argument
97 assert(src < nir_intrinsic_infos[intr->intrinsic].num_srcs); in nir_intr_src_regindex()
98 assert(!intr->src[src].is_ssa); in nir_intr_src_regindex()
100 return intr->src[src].reg.reg->index; in nir_intr_src_regindex()
103 static inline uint32_t nir_intr_src_const(const nir_intrinsic_instr *intr, in nir_intr_src_const() argument
106 assert(src < nir_intrinsic_infos[intr->intrinsic].num_srcs); in nir_intr_src_const()
107 assert(intr in nir_intr_src_const()
114 nir_intr_src_comp_const(const nir_intrinsic_instr *intr, size_t src, size_t comp) nir_intr_src_comp_const() argument
125 nir_intr_src_is_const(const nir_intrinsic_instr *intr, size_t src) nir_intr_src_is_const() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/vc4/
H A Dvc4_nir_lower_io.c40 replace_intrinsic_with_vec(nir_builder *b, nir_intrinsic_instr *intr, in replace_intrinsic_with_vec() argument
47 nir_ssa_def *vec = nir_vec(b, comps, intr->num_components); in replace_intrinsic_with_vec()
52 nir_ssa_def_rewrite_uses(&intr->dest.ssa, vec); in replace_intrinsic_with_vec()
53 nir_instr_remove(&intr->instr); in replace_intrinsic_with_vec()
173 nir_intrinsic_instr *intr) in vc4_nir_lower_vertex_attr()
175 b->cursor = nir_before_instr(&intr->instr); in vc4_nir_lower_vertex_attr()
177 int attr = nir_intrinsic_base(intr); in vc4_nir_lower_vertex_attr()
184 assert(nir_src_as_uint(intr->src[0]) == 0); in vc4_nir_lower_vertex_attr()
193 .base = nir_intrinsic_base(intr), in vc4_nir_lower_vertex_attr()
201 for (int i = 0; i < intr in vc4_nir_lower_vertex_attr()
172 vc4_nir_lower_vertex_attr(struct vc4_compile *c, nir_builder *b, nir_intrinsic_instr *intr) vc4_nir_lower_vertex_attr() argument
221 vc4_nir_lower_fs_input(struct vc4_compile *c, nir_builder *b, nir_intrinsic_instr *intr) vc4_nir_lower_fs_input() argument
277 vc4_nir_lower_output(struct vc4_compile *c, nir_builder *b, nir_intrinsic_instr *intr) vc4_nir_lower_output() argument
294 vc4_nir_lower_uniform(struct vc4_compile *c, nir_builder *b, nir_intrinsic_instr *intr) vc4_nir_lower_uniform() argument
[all...]
/third_party/mesa3d/src/gallium/drivers/lima/ir/
H A Dlima_nir_lower_uniform_to_scalar.c30 lower_load_uniform_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_uniform_to_scalar() argument
32 b->cursor = nir_before_instr(&intr->instr); in lower_load_uniform_to_scalar()
35 for (unsigned i = 0; i < intr->num_components; i++) { in lower_load_uniform_to_scalar()
37 nir_intrinsic_instr_create(b->shader, intr->intrinsic); in lower_load_uniform_to_scalar()
39 1, intr->dest.ssa.bit_size, NULL); in lower_load_uniform_to_scalar()
42 nir_intrinsic_set_base(chan_intr, nir_intrinsic_base(intr) * 4 + i); in lower_load_uniform_to_scalar()
43 nir_intrinsic_set_range(chan_intr, nir_intrinsic_range(intr) * 4); in lower_load_uniform_to_scalar()
44 nir_intrinsic_set_dest_type(chan_intr, nir_intrinsic_dest_type(intr)); in lower_load_uniform_to_scalar()
47 nir_src_for_ssa(nir_imul_imm(b, intr->src[0].ssa, 4)); in lower_load_uniform_to_scalar()
54 nir_ssa_def_rewrite_uses(&intr in lower_load_uniform_to_scalar()
72 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lima_nir_lower_uniform_to_scalar() local
[all...]
/third_party/mesa3d/src/gallium/drivers/r600/sfn/
H A Dsfn_shader_vs.cpp48 bool VertexExportStage::store_output(nir_intrinsic_instr& intr) in store_output() argument
50 auto index = nir_src_as_const_value(intr.src[1]); in store_output()
54 nir_intrinsic_component(&intr), in store_output()
55 nir_intrinsic_io_semantics(&intr).location, in store_output()
56 (unsigned)nir_intrinsic_base(&intr) + index->u32, in store_output()
60 return do_store_output(store_info, intr); in store_output()
79 bool VertexExportForFs::do_store_output(const store_loc &store_info, nir_intrinsic_instr& intr) in do_store_output() argument
87 return emit_varying_pos(store_info, intr); in do_store_output()
90 return emit_varying_pos(store_info, intr, &swizzle_override); in do_store_output()
94 return emit_varying_pos(store_info, intr, in do_store_output()
191 emit_varying_pos(const store_loc &store_info, nir_intrinsic_instr& intr, std::array<uint8_t, 4> *swizzle_override) emit_varying_pos() argument
263 emit_varying_param(const store_loc &store_info, nir_intrinsic_instr& intr) emit_varying_param() argument
477 load_input(nir_intrinsic_instr *intr) load_input() argument
534 store_output(nir_intrinsic_instr *intr) store_output() argument
539 process_stage_intrinsic(nir_intrinsic_instr *intr) process_stage_intrinsic() argument
666 do_store_output(const store_loc &store_info, nir_intrinsic_instr& intr) do_store_output() argument
[all...]
H A Dsfn_nir_lower_64bit.cpp51 split_double_load_deref(nir_intrinsic_instr *intr);
54 split_double_store_deref(nir_intrinsic_instr *intr);
58 split_load_deref_array(nir_intrinsic_instr *intr, nir_src& index);
61 split_load_deref_var(nir_intrinsic_instr *intr);
64 split_store_deref_array(nir_intrinsic_instr *intr, nir_deref_instr *deref);
67 split_store_deref_var(nir_intrinsic_instr *intr, nir_deref_instr *deref1);
79 nir_ssa_def *split_double_load_uniform(nir_intrinsic_instr *intr);
82 split_double_load_ssbo(nir_intrinsic_instr *intr);
85 split_double_load_ubo(nir_intrinsic_instr *intr);
121 auto intr in filter()
133 auto intr = nir_instr_as_intrinsic(instr); lower() local
303 auto intr = nir_instr_as_intrinsic(instr); filter() local
384 split_double_store_deref(nir_intrinsic_instr *intr) split_double_store_deref() argument
397 split_double_load_deref(nir_intrinsic_instr *intr) split_double_load_deref() argument
411 split_load_deref_array(nir_intrinsic_instr *intr, nir_src& index) split_load_deref_array() argument
433 split_store_deref_array(nir_intrinsic_instr *intr, nir_deref_instr *deref) split_store_deref_array() argument
461 split_store_deref_var(nir_intrinsic_instr *intr, UNUSED nir_deref_instr *deref) split_store_deref_var() argument
485 split_load_deref_var(nir_intrinsic_instr *intr) split_load_deref_var() argument
589 split_double_load_uniform(nir_intrinsic_instr *intr) split_double_load_uniform() argument
616 split_double_load_ssbo(nir_intrinsic_instr *intr) split_double_load_ssbo() argument
636 split_double_load_ubo(nir_intrinsic_instr *intr) split_double_load_ubo() argument
724 auto intr = nir_instr_as_intrinsic(instr); lower() local
811 auto intr = nir_instr_as_intrinsic(instr); filter() local
859 auto intr = nir_instr_as_intrinsic(instr); lower() local
933 load_deref_64_to_vec2(nir_intrinsic_instr *intr) load_deref_64_to_vec2() argument
966 store_64_to_vec2(nir_intrinsic_instr *intr) store_64_to_vec2() argument
998 load_uniform_64_to_vec2(nir_intrinsic_instr *intr) load_uniform_64_to_vec2() argument
1008 load_64_to_vec2(nir_intrinsic_instr *intr) load_64_to_vec2() argument
1018 load_ssbo_64_to_vec2(nir_intrinsic_instr *intr) load_ssbo_64_to_vec2() argument
[all...]
H A Dsfn_shader_fs.cpp80 bool FragmentShader::load_input(nir_intrinsic_instr *intr) in load_input() argument
84 auto location = nir_intrinsic_io_semantics(intr).location; in load_input()
87 for (unsigned i = 0; i < nir_dest_num_components(intr->dest) ; ++i) { in load_input()
89 vf.dest(intr->dest, i, pin_none), in load_input()
100 vf.dest(intr->dest, 0, pin_none), in load_input()
108 return load_input_hw(intr); in load_input()
111 bool FragmentShader::store_output(nir_intrinsic_instr *intr) in store_output() argument
113 auto location = nir_intrinsic_io_semantics(intr).location; in store_output()
119 return emit_export_pixel(*intr); in store_output()
123 barycentric_ij_index(nir_intrinsic_instr *intr) in barycentric_ij_index() argument
157 process_stage_intrinsic(nir_intrinsic_instr *intr) process_stage_intrinsic() argument
199 load_interpolated_input(nir_intrinsic_instr *intr) load_interpolated_input() argument
342 scan_input(nir_intrinsic_instr *intr, int index_src_id) scan_input() argument
463 emit_export_pixel(nir_intrinsic_instr& intr) emit_export_pixel() argument
637 load_input_hw(nir_intrinsic_instr *intr) load_input_hw() argument
644 assert(index < 4); if (intr->dest.is_ssa) load_input_hw() argument
659 process_stage_intrinsic_hw(nir_intrinsic_instr *intr) process_stage_intrinsic_hw() argument
671 load_interpolated_input_hw(nir_intrinsic_instr *intr) load_interpolated_input_hw() argument
676 load_input_hw(nir_intrinsic_instr *intr) load_input_hw() argument
735 process_stage_intrinsic_hw(nir_intrinsic_instr *intr) process_stage_intrinsic_hw() argument
756 load_interpolated_input_hw(nir_intrinsic_instr *intr) load_interpolated_input_hw() argument
[all...]
H A Dsfn_shader_fs.h37 bool load_input(nir_intrinsic_instr *intr) override;
38 bool store_output(nir_intrinsic_instr *intr) override;
40 bool process_stage_intrinsic(nir_intrinsic_instr *intr) override;
48 bool load_interpolated_input(nir_intrinsic_instr *intr);
51 virtual bool load_input_hw(nir_intrinsic_instr *intr) = 0;
52 virtual bool process_stage_intrinsic_hw(nir_intrinsic_instr *intr) = 0;
53 virtual bool load_interpolated_input_hw(nir_intrinsic_instr *intr) = 0;
63 bool emit_export_pixel(nir_intrinsic_instr& intr);
103 bool load_input_hw(nir_intrinsic_instr *intr) override;
104 bool process_stage_intrinsic_hw(nir_intrinsic_instr *intr) overrid
[all...]
/third_party/mesa3d/src/gallium/drivers/etnaviv/
H A Detnaviv_nir_lower_ubo_to_uniform.c39 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in is_const_ubo()
40 if (intr->intrinsic != nir_intrinsic_load_ubo) in is_const_ubo()
43 if (!nir_src_is_const(intr->src[0]) || !nir_src_is_const(intr->src[1])) in is_const_ubo()
46 const uint32_t block = nir_src_as_uint(intr->src[0]); in is_const_ubo()
56 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_ubo_to_uniform() local
60 nir_ssa_def *ubo_offset = nir_ssa_for_src(b, intr->src[1], 1); in lower_ubo_to_uniform()
61 nir_ssa_def *range_base = nir_imm_int(b, nir_intrinsic_range_base(intr)); in lower_ubo_to_uniform()
67 nir_load_uniform(b, intr->num_components, intr in lower_ubo_to_uniform()
[all...]
/third_party/mesa3d/src/gallium/drivers/d3d12/
H A Dd3d12_nir_passes.c71 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_pos_write()
72 if (intr->intrinsic != nir_intrinsic_store_deref) in lower_pos_write()
75 nir_variable *var = nir_intrinsic_get_var(intr, 0); in lower_pos_write()
80 b->cursor = nir_before_instr(&intr->instr); in lower_pos_write()
82 nir_ssa_def *pos = nir_ssa_for_src(b, intr->src[1], 4); in lower_pos_write()
90 nir_instr_rewrite_src(&intr->instr, intr->src + 1, nir_src_for_ssa(def)); in lower_pos_write()
126 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_load_face()
127 if (intr->intrinsic != nir_intrinsic_load_front_face) in lower_load_face()
130 b->cursor = nir_before_instr(&intr in lower_load_face()
236 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_compute_state_vars() local
404 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(state->store_pos_instr); invert_depth_impl() local
700 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_load_ubo_packed_impl() local
752 lower_triangle_strip_store(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *vertex_count_var, nir_variable **varyings) lower_triangle_strip_store() argument
773 lower_triangle_strip_emit_vertex(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *vertex_count_var, nir_variable **varyings, nir_variable **out_varyings) lower_triangle_strip_emit_vertex() argument
826 lower_triangle_strip_end_primitive(nir_builder *b, nir_intrinsic_instr *intr, nir_variable *vertex_count_var) lower_triangle_strip_end_primitive() argument
933 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); lower_multisampling_instr() local
1142 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); d3d12_write_0_to_new_varying() local
[all...]
/third_party/mesa3d/src/microsoft/compiler/
H A Ddxil_nir_tess.c37 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in remove_hs_intrinsics() local
38 if (intr->intrinsic != nir_intrinsic_store_output && in remove_hs_intrinsics()
39 intr->intrinsic != nir_intrinsic_memory_barrier_tcs_patch && in remove_hs_intrinsics()
40 intr->intrinsic != nir_intrinsic_control_barrier) in remove_hs_intrinsics()
86 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in prune_patch_function_to_intrinsic_and_srcs() local
87 if (intr->intrinsic != nir_intrinsic_store_output && in prune_patch_function_to_intrinsic_and_srcs()
88 intr->intrinsic != nir_intrinsic_memory_barrier_tcs_patch) in prune_patch_function_to_intrinsic_and_srcs()
216 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in dxil_nir_split_tess_ctrl() local
217 if (intr->intrinsic != nir_intrinsic_load_invocation_id || in dxil_nir_split_tess_ctrl()
218 list_length(&intr in dxil_nir_split_tess_ctrl()
241 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); dxil_nir_split_tess_ctrl() local
[all...]

Completed in 14 milliseconds

1234567