diff options
author | Alyssa Rosenzweig <[email protected]> | 2020-04-27 19:23:17 -0400 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-04-29 15:35:54 +0000 |
commit | bb0e85fca472ed57bd01ba13a18f55bce42ab73a (patch) | |
tree | 2231fe7a991b1c1dc7901ee6a1a02a5e1b1af23f /src | |
parent | 08af4c788d3e9b4eb4fcb7477dce0ca7930f974a (diff) |
pan/mdg: Move sampler_type emission to pack time
Signed-off-by: Alyssa Rosenzweig <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4793>
Diffstat (limited to 'src')
-rw-r--r-- | src/panfrost/midgard/midgard_compile.c | 16 | ||||
-rw-r--r-- | src/panfrost/midgard/midgard_emit.c | 16 |
2 files changed, 16 insertions, 16 deletions
diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c index 9287e1405b0..ae03750b08e 100644 --- a/src/panfrost/midgard/midgard_compile.c +++ b/src/panfrost/midgard/midgard_compile.c @@ -1722,21 +1722,6 @@ pan_attach_constant_bias( return true; } -static enum mali_sampler_type -midgard_sampler_type(nir_alu_type t) { - switch (nir_alu_type_get_base_type(t)) - { - case nir_type_float: - return MALI_SAMPLER_FLOAT; - case nir_type_int: - return MALI_SAMPLER_SIGNED; - case nir_type_uint: - return MALI_SAMPLER_UNSIGNED; - default: - unreachable("Unknown sampler type"); - } -} - static void emit_texop_native(compiler_context *ctx, nir_tex_instr *instr, unsigned midgard_texop) @@ -1762,7 +1747,6 @@ emit_texop_native(compiler_context *ctx, nir_tex_instr *instr, .format = midgard_tex_format(instr->sampler_dim), .texture_handle = texture_index, .sampler_handle = sampler_index, - .sampler_type = midgard_sampler_type(instr->dest_type), .shadow = instr->is_shadow, } }; diff --git a/src/panfrost/midgard/midgard_emit.c b/src/panfrost/midgard/midgard_emit.c index 02e6291a67a..6f6a395b430 100644 --- a/src/panfrost/midgard/midgard_emit.c +++ b/src/panfrost/midgard/midgard_emit.c @@ -397,6 +397,21 @@ mir_ldst_imm_shift(midgard_load_store_op op) return 1; } +static enum mali_sampler_type +midgard_sampler_type(nir_alu_type t) { + switch (nir_alu_type_get_base_type(t)) + { + case nir_type_float: + return MALI_SAMPLER_FLOAT; + case nir_type_int: + return MALI_SAMPLER_SIGNED; + case nir_type_uint: + return MALI_SAMPLER_UNSIGNED; + default: + unreachable("Unknown sampler type"); + } +} + /* After everything is scheduled, emit whole bundles at a time */ void @@ -482,6 +497,7 @@ emit_binary_bundle(compiler_context *ctx, ins->texture.out_full = (osz == 32); ins->texture.in_reg_full = (isz == 32); + ins->texture.sampler_type = midgard_sampler_type(ins->dest_type); ctx->texture_op_count--; |