Home
last modified time | relevance | path

Searched refs:intr (Results 1 – 25 of 137) sorted by relevance

123456

/third_party/mesa3d/src/compiler/nir/
Dnir_lower_io_to_scalar.c35 lower_load_input_to_scalar(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_input_to_scalar() argument
37 b->cursor = nir_before_instr(&intr->instr); in lower_load_input_to_scalar()
39 assert(intr->dest.is_ssa); in lower_load_input_to_scalar()
43 for (unsigned i = 0; i < intr->num_components; i++) { in lower_load_input_to_scalar()
45 nir_intrinsic_instr_create(b->shader, intr->intrinsic); in lower_load_input_to_scalar()
47 1, intr->dest.ssa.bit_size, NULL); in lower_load_input_to_scalar()
50 nir_intrinsic_set_base(chan_intr, nir_intrinsic_base(intr)); in lower_load_input_to_scalar()
51 nir_intrinsic_set_component(chan_intr, nir_intrinsic_component(intr) + i); in lower_load_input_to_scalar()
52 nir_intrinsic_set_dest_type(chan_intr, nir_intrinsic_dest_type(intr)); in lower_load_input_to_scalar()
53 nir_intrinsic_set_io_semantics(chan_intr, nir_intrinsic_io_semantics(intr)); in lower_load_input_to_scalar()
[all …]
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->intrinsic); in split_wrmask()
[all …]
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->intrinsic); in lower_array()
[all …]
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->dest.ssa.num_components, in lower_ssbo_instr()
[all …]
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 …]
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->num_components == 1) { in nir_lower_ubo_vec4_lower()
[all …]
Dnir_lower_mediump.c38 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in get_io_intrinsic() local
40 switch (intr->intrinsic) { in get_io_intrinsic()
46 return modes & nir_var_shader_in ? intr : NULL; in get_io_intrinsic()
52 return modes & nir_var_shader_out ? intr : NULL; in get_io_intrinsic()
76 nir_intrinsic_instr *intr = get_io_intrinsic(instr, modes, &mode); in nir_recompute_io_bases() local
77 if (!intr) in nir_recompute_io_bases()
80 nir_io_semantics sem = nir_intrinsic_io_semantics(intr); in nir_recompute_io_bases()
101 nir_intrinsic_instr *intr = get_io_intrinsic(instr, modes, &mode); in nir_recompute_io_bases() local
102 if (!intr) in nir_recompute_io_bases()
105 nir_io_semantics sem = nir_intrinsic_io_semantics(intr); in nir_recompute_io_bases()
[all …]
Dnir_inline_uniforms.c98 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in src_only_uses_uniforms() local
102 if (intr->intrinsic == nir_intrinsic_load_ubo && in src_only_uses_uniforms()
103 nir_src_is_const(intr->src[0]) && in src_only_uses_uniforms()
104 nir_src_as_uint(intr->src[0]) == 0 && in src_only_uses_uniforms()
105 nir_src_is_const(intr->src[1]) && in src_only_uses_uniforms()
106 nir_src_as_uint(intr->src[1]) <= MAX_OFFSET && in src_only_uses_uniforms()
108 intr->dest.ssa.bit_size == 32) { in src_only_uses_uniforms()
109 uint32_t offset = nir_src_as_uint(intr->src[1]) + component * 4; in src_only_uses_uniforms()
353 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in nir_inline_uniforms() local
356 if (intr->intrinsic == nir_intrinsic_load_ubo && in nir_inline_uniforms()
[all …]
Dnir_lower_fragcoord_wtrans.c41 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_fragcoord_wtrans_filter() local
42 if (intr->intrinsic == nir_intrinsic_load_frag_coord) in lower_fragcoord_wtrans_filter()
45 if (intr->intrinsic != nir_intrinsic_load_deref) in lower_fragcoord_wtrans_filter()
48 nir_variable *var = nir_intrinsic_get_var(intr, 0); in lower_fragcoord_wtrans_filter()
59 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_fragcoord_wtrans_impl() local
62 nir_channel(b, &intr->dest.ssa, 0), in lower_fragcoord_wtrans_impl()
63 nir_channel(b, &intr->dest.ssa, 1), in lower_fragcoord_wtrans_impl()
64 nir_channel(b, &intr->dest.ssa, 2), in lower_fragcoord_wtrans_impl()
65 nir_frcp(b, nir_channel(b, &intr->dest.ssa, 3))); in lower_fragcoord_wtrans_impl()
Dnir_lower_wpos_ytransform.c80 nir_intrinsic_instr *intr, bool invert, in emit_wpos_adjustment() argument
86 assert(intr->dest.is_ssa); in emit_wpos_adjustment()
87 wpos_input = &intr->dest.ssa; in emit_wpos_adjustment()
89 b->cursor = nir_after_instr(&intr->instr); in emit_wpos_adjustment()
142 nir_ssa_def_rewrite_uses_after(&intr->dest.ssa, in emit_wpos_adjustment()
148 lower_fragcoord(lower_wpos_ytransform_state *state, nir_intrinsic_instr *intr) in lower_fragcoord() argument
232 emit_wpos_adjustment(state, intr, invert, adjX, adjY); in lower_fragcoord()
280 nir_intrinsic_instr *intr) in lower_load_sample_pos() argument
283 b->cursor = nir_after_instr(&intr->instr); in lower_load_sample_pos()
285 nir_ssa_def *pos = &intr->dest.ssa; in lower_load_sample_pos()
[all …]
Dnir_lower_clamp_color_outputs.c59 lower_intrinsic(lower_state *state, nir_intrinsic_instr *intr) in lower_intrinsic() argument
65 switch (intr->intrinsic) { in lower_intrinsic()
67 out = nir_deref_instr_get_variable(nir_src_as_deref(intr->src[0])); in lower_intrinsic()
73 if (nir_intrinsic_base(intr) == drvloc) { in lower_intrinsic()
88 b->cursor = nir_before_instr(&intr->instr); in lower_intrinsic()
89 int src = intr->intrinsic == nir_intrinsic_store_deref ? 1 : 0; in lower_intrinsic()
90 s = nir_ssa_for_src(b, intr->src[src], intr->num_components); in lower_intrinsic()
92 nir_instr_rewrite_src(&intr->instr, &intr->src[src], nir_src_for_ssa(s)); in lower_intrinsic()
/third_party/mesa3d/src/freedreno/ir3/
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
[all …]
Dir3_a4xx.c39 emit_intrinsic_load_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr, in emit_intrinsic_load_ssbo() argument
45 struct ir3_instruction *ssbo = ir3_ssbo_to_ibo(ctx, intr->src[0]); in emit_intrinsic_load_ssbo()
47 byte_offset = ir3_get_src(ctx, &intr->src[1])[0]; in emit_intrinsic_load_ssbo()
48 offset = ir3_get_src(ctx, &intr->src[2])[0]; in emit_intrinsic_load_ssbo()
55 ldgb->dsts[0]->wrmask = MASK(intr->num_components); in emit_intrinsic_load_ssbo()
56 ldgb->cat6.iim_val = intr->num_components; in emit_intrinsic_load_ssbo()
62 ir3_split_dest(b, dst, ldgb, 0, intr->num_components); in emit_intrinsic_load_ssbo()
67 emit_intrinsic_store_ssbo(struct ir3_context *ctx, nir_intrinsic_instr *intr) in emit_intrinsic_store_ssbo() argument
71 unsigned wrmask = nir_intrinsic_write_mask(intr); in emit_intrinsic_store_ssbo()
74 assert(wrmask == BITFIELD_MASK(intr->num_components)); in emit_intrinsic_store_ssbo()
[all …]
Dir3_nir_lower_tess.c149 replace_intrinsic(nir_builder *b, nir_intrinsic_instr *intr, in replace_intrinsic() argument
161 new_intr->num_components = intr->num_components; in replace_intrinsic()
164 nir_ssa_dest_init(&new_intr->instr, &new_intr->dest, intr->num_components, in replace_intrinsic()
170 nir_ssa_def_rewrite_uses(&intr->dest.ssa, &new_intr->dest.ssa); in replace_intrinsic()
172 nir_instr_remove(&intr->instr); in replace_intrinsic()
240 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_block_to_explicit_output() local
242 switch (intr->intrinsic) { in lower_block_to_explicit_output()
252 util_is_power_of_two_nonzero(nir_intrinsic_write_mask(intr) + 1)); in lower_block_to_explicit_output()
254 b->cursor = nir_instr_remove(&intr->instr); in lower_block_to_explicit_output()
258 b, state, vertex_id, nir_intrinsic_io_semantics(intr).location, in lower_block_to_explicit_output()
[all …]
Dir3_nir_lower_load_barycentric_at_sample.c42 lower_load_barycentric_at_sample(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_barycentric_at_sample() argument
44 nir_ssa_def *pos = load_sample_pos(b, intr->src[0].ssa); in lower_load_barycentric_at_sample()
50 lower_load_sample_pos(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_sample_pos() argument
67 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in ir3_nir_lower_load_barycentric_at_sample_instr() local
69 if (intr->intrinsic == nir_intrinsic_load_sample_pos) in ir3_nir_lower_load_barycentric_at_sample_instr()
70 return lower_load_sample_pos(b, intr); in ir3_nir_lower_load_barycentric_at_sample_instr()
72 return lower_load_barycentric_at_sample(b, intr); in ir3_nir_lower_load_barycentric_at_sample_instr()
81 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in ir3_nir_lower_load_barycentric_at_sample_filter() local
82 return (intr->intrinsic == nir_intrinsic_load_barycentric_at_sample || in ir3_nir_lower_load_barycentric_at_sample_filter()
83 intr->intrinsic == nir_intrinsic_load_sample_pos); in ir3_nir_lower_load_barycentric_at_sample_filter()
/third_party/mesa3d/src/microsoft/clc/
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->dest)); in lower_load_work_dim()
[all …]
/third_party/mesa3d/src/gallium/drivers/r600/sfn/
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);
116 auto intr = nir_instr_as_intrinsic(instr); in filter() local
[all …]
/third_party/mesa3d/src/gallium/drivers/vc4/
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() argument
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->num_components; i++) { in vc4_nir_lower_vertex_attr()
[all …]
/third_party/mesa3d/src/gallium/drivers/lima/ir/
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->dest.ssa, in lower_load_uniform_to_scalar()
[all …]
/third_party/mesa3d/src/gallium/drivers/etnaviv/
Detnaviv_nir_lower_ubo_to_uniform.c39 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in is_const_ubo() local
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->dest.ssa.bit_size, uniform_offset, in lower_ubo_to_uniform()
68 .base = nir_intrinsic_range_base(intr) / 16, in lower_ubo_to_uniform()
69 .range = nir_intrinsic_range(intr) / 16, in lower_ubo_to_uniform()
[all …]
/third_party/mesa3d/src/microsoft/compiler/
Ddxil_nir.c116 lower_load_deref(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_deref() argument
118 assert(intr->dest.is_ssa); in lower_load_deref()
120 b->cursor = nir_before_instr(&intr->instr); in lower_load_deref()
122 nir_deref_instr *deref = nir_src_as_deref(intr->src[0]); in lower_load_deref()
128 assert(intr->dest.is_ssa); in lower_load_deref()
129 unsigned num_components = nir_dest_num_components(intr->dest); in lower_load_deref()
130 unsigned bit_size = nir_dest_bit_size(intr->dest); in lower_load_deref()
170 nir_ssa_def_rewrite_uses(&intr->dest.ssa, result); in lower_load_deref()
171 nir_instr_remove(&intr->instr); in lower_load_deref()
261 lower_load_ssbo(nir_builder *b, nir_intrinsic_instr *intr) in lower_load_ssbo() argument
[all …]
Dnir_to_dxil.c438 unary_func_name(enum dxil_intr intr) in unary_func_name() argument
440 switch (intr) { in unary_func_name()
454 enum dxil_intr intr, in emit_unary_call() argument
458 unary_func_name(intr), in emit_unary_call()
463 const struct dxil_value *opcode = dxil_module_get_int32_const(&ctx->mod, intr); in emit_unary_call()
477 enum dxil_intr intr, in emit_binary_call() argument
484 const struct dxil_value *opcode = dxil_module_get_int32_const(&ctx->mod, intr); in emit_binary_call()
499 enum dxil_intr intr, in emit_tertiary_call() argument
508 const struct dxil_value *opcode = dxil_module_get_int32_const(&ctx->mod, intr); in emit_tertiary_call()
1770 enum dxil_intr intr, const struct dxil_value *op) in emit_unary_intin() argument
[all …]
/third_party/mesa3d/src/gallium/drivers/d3d12/
Dd3d12_nir_passes.c70 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_pos_write() local
71 if (intr->intrinsic != nir_intrinsic_store_deref) in lower_pos_write()
74 nir_variable *var = nir_intrinsic_get_var(intr, 0); in lower_pos_write()
79 b->cursor = nir_before_instr(&intr->instr); in lower_pos_write()
81 nir_ssa_def *pos = nir_ssa_for_src(b, intr->src[1], 4); in lower_pos_write()
89 nir_instr_rewrite_src(&intr->instr, intr->src + 1, nir_src_for_ssa(def)); in lower_pos_write()
124 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in lower_load_face() local
125 if (intr->intrinsic != nir_intrinsic_load_front_face) in lower_load_face()
128 b->cursor = nir_before_instr(&intr->instr); in lower_load_face()
132 nir_ssa_def_rewrite_uses(&intr->dest.ssa, load); in lower_load_face()
[all …]
/third_party/mesa3d/src/panfrost/util/
Dpan_lower_writeout.c66 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in pan_nir_lower_zs_store() local
67 if (intr->intrinsic != nir_intrinsic_store_output) in pan_nir_lower_zs_store()
70 … if (z_var && nir_intrinsic_base(intr) == z_var->data.driver_location) { in pan_nir_lower_zs_store()
72 z_store = intr; in pan_nir_lower_zs_store()
75 … if (s_var && nir_intrinsic_base(intr) == s_var->data.driver_location) { in pan_nir_lower_zs_store()
77 s_store = intr; in pan_nir_lower_zs_store()
91 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in pan_nir_lower_zs_store() local
92 if (intr->intrinsic != nir_intrinsic_store_output) in pan_nir_lower_zs_store()
95 …e *var = nir_find_variable_with_driver_location(nir, nir_var_shader_out, nir_intrinsic_base(intr)); in pan_nir_lower_zs_store()
104 assert(nir_src_is_const(intr->src[1]) && "no indirect outputs"); in pan_nir_lower_zs_store()
[all …]
/third_party/mesa3d/src/panfrost/midgard/
Dnir_fuse_io_16.c62 nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); in nir_fuse_io_16() local
64 if (intr->intrinsic != nir_intrinsic_load_interpolated_input) in nir_fuse_io_16()
67 if (nir_dest_bit_size(intr->dest) != 32) in nir_fuse_io_16()
72 if (nir_intrinsic_component(intr)) in nir_fuse_io_16()
75 if (!intr->dest.is_ssa) in nir_fuse_io_16()
78 if (!list_is_empty(&intr->dest.ssa.if_uses)) in nir_fuse_io_16()
83 nir_foreach_use(src, &intr->dest.ssa) in nir_fuse_io_16()
89 intr->dest.ssa.bit_size = 16; in nir_fuse_io_16()
96 nir_ssa_def *conv = nir_f2f32(&b, &intr->dest.ssa); in nir_fuse_io_16()
97 nir_ssa_def_rewrite_uses_after(&intr->dest.ssa, conv, in nir_fuse_io_16()

123456