mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 15:20:10 +01:00
aco: Pass correct number of coords to Vega 1D LOD instruction.
If we pass a physical 2D texture descriptor we should also pass 2 coords. Otherwise it just uses the random content in the second register which ends up funny sometimes. Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20696>
This commit is contained in:
parent
267dd1f4d5
commit
edca10e9c9
3 changed files with 1 additions and 7 deletions
|
|
@ -1,5 +1,4 @@
|
|||
dEQP-VK.dynamic_rendering.basic.*
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.*
|
||||
dEQP-VK.image.sample_texture.64_bit_compressed_format_two_samplers
|
||||
dEQP-VK.image.sample_texture.64_bit_compressed_format_two_samplers_cubemap
|
||||
dEQP-VK.image.sample_texture.128_bit_compressed_format_two_samplers
|
||||
|
|
|
|||
|
|
@ -1,9 +1,4 @@
|
|||
dEQP-VK.dynamic_rendering.basic.*
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.sampler1darray_float_zero_uv_width_fragment
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.sampler1d_fixed_fragment
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.usampler1darray_fragment
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.usampler1darray_zero_uv_width_fragment
|
||||
dEQP-VK.glsl.texture_functions.query.texturequerylod.isampler1darray_fragment
|
||||
dEQP-VK.image.sample_texture.64_bit_compressed_format_two_samplers
|
||||
dEQP-VK.image.sample_texture.64_bit_compressed_format_two_samplers_cubemap
|
||||
dEQP-VK.image.sample_texture.128_bit_compressed_format_two_samplers
|
||||
|
|
|
|||
|
|
@ -9626,7 +9626,7 @@ visit_tex(isel_context* ctx, nir_tex_instr* instr)
|
|||
unsigned wqm_coord_count = 0;
|
||||
std::vector<Temp> unpacked_coord;
|
||||
if (ctx->options->gfx_level == GFX9 && instr->sampler_dim == GLSL_SAMPLER_DIM_1D &&
|
||||
instr->op != nir_texop_lod && instr->coord_components) {
|
||||
instr->coord_components) {
|
||||
RegClass rc = a16 ? v2b : v1;
|
||||
for (unsigned i = 0; i < coord.bytes() / rc.bytes(); i++)
|
||||
unpacked_coord.emplace_back(emit_extract_vector(ctx, coord, i, rc));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue