mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 00:10:10 +01:00
ac/llvm: enable wqm for ac_build_quad_swizzle from ac_build_fs_interp_mov
Without this, WQM is only used for the lds_param_load like this: s_wqm_b64 exec, exec lds_param_load v5, attr0.x wait_vdst:15 s_mov_b64 exec, s[0:1] v_mov_b32_dpp v5, v5 quad_perm:[0,0,0,0] row_mask:0xf bank_mask:0xf With this change we get: s_wqm_b64 exec, exec lds_param_load v5, attr0.x wait_vdst:15 s_mov_b64 exec, s[0:1] ... s_wqm_b64 exec, exec v_mov_b32_dpp v5, v5 quad_perm:[0,0,0,0] row_mask:0xf bank_mask:0xf s_mov_b64 exec, s[0:1] This fixes KHR-GL46.shaders.uniform_block.random.nested_structs_instance_arrays.0 and other similar tests with LLVM. Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32959>
This commit is contained in:
parent
182d662ccf
commit
9d4d9e6150
2 changed files with 2 additions and 9 deletions
|
|
@ -758,7 +758,7 @@ LLVMValueRef ac_build_fs_interp_mov(struct ac_llvm_context *ctx, unsigned parame
|
||||||
p = ac_build_intrinsic(ctx, "llvm.amdgcn.lds.param.load",
|
p = ac_build_intrinsic(ctx, "llvm.amdgcn.lds.param.load",
|
||||||
ctx->f32, args, 3, 0);
|
ctx->f32, args, 3, 0);
|
||||||
p = ac_build_intrinsic(ctx, "llvm.amdgcn.wqm.f32", ctx->f32, &p, 1, 0);
|
p = ac_build_intrinsic(ctx, "llvm.amdgcn.wqm.f32", ctx->f32, &p, 1, 0);
|
||||||
p = ac_build_quad_swizzle(ctx, p, parameter, parameter, parameter, parameter, false);
|
p = ac_build_quad_swizzle(ctx, p, parameter, parameter, parameter, parameter, true);
|
||||||
return ac_build_intrinsic(ctx, "llvm.amdgcn.wqm.f32", ctx->f32, &p, 1, 0);
|
return ac_build_intrinsic(ctx, "llvm.amdgcn.wqm.f32", ctx->f32, &p, 1, 0);
|
||||||
} else {
|
} else {
|
||||||
args[0] = LLVMConstInt(ctx->i32, (parameter + 2) % 3, 0);
|
args[0] = LLVMConstInt(ctx->i32, (parameter + 2) % 3, 0);
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,6 @@ spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb-fp@sRGB decode ful
|
||||||
# glcts failures
|
# glcts failures
|
||||||
GTF-GL46.gtf30.GL3Tests.fragment_coord_conventions.fragment_coord_conventions_multisample,Fail
|
GTF-GL46.gtf30.GL3Tests.fragment_coord_conventions.fragment_coord_conventions_multisample,Fail
|
||||||
GTF-GL46.gtf32.GL3Tests.fragment_coord_conventions.fragment_coord_conventions_32_multisample,Fail
|
GTF-GL46.gtf32.GL3Tests.fragment_coord_conventions.fragment_coord_conventions_32_multisample,Fail
|
||||||
KHR-GL46.shaders.uniform_block.random.nested_structs_instance_arrays.0,Fail
|
|
||||||
## Fail because GFX10+ removed MS texture support (see si_get_sparse_texture_virtual_page_size)
|
## Fail because GFX10+ removed MS texture support (see si_get_sparse_texture_virtual_page_size)
|
||||||
KHR-GL46.sparse_texture2_tests.SparseTexture2Allocation_texture_2d_multisample_array_r11f_g11f_b10f,Fail
|
KHR-GL46.sparse_texture2_tests.SparseTexture2Allocation_texture_2d_multisample_array_r11f_g11f_b10f,Fail
|
||||||
KHR-GL46.sparse_texture2_tests.SparseTexture2Allocation_texture_2d_multisample_array_r16,Fail
|
KHR-GL46.sparse_texture2_tests.SparseTexture2Allocation_texture_2d_multisample_array_r16,Fail
|
||||||
|
|
@ -689,11 +688,5 @@ KHR-GL46.transform_feedback_overflow_query_ARB.advanced-single-stream-separate-a
|
||||||
KHR-GL46.transform_feedback_overflow_query_ARB.multiple-streams-multiple-buffers-per-stream,Fail
|
KHR-GL46.transform_feedback_overflow_query_ARB.multiple-streams-multiple-buffers-per-stream,Fail
|
||||||
KHR-GL46.transform_feedback_overflow_query_ARB.multiple-streams-one-buffer-per-stream,Fail
|
KHR-GL46.transform_feedback_overflow_query_ARB.multiple-streams-one-buffer-per-stream,Fail
|
||||||
|
|
||||||
# escts failures (pass with ACO)
|
# escts failures (incorrect glMemoryBarrier usage in the test)
|
||||||
KHR-GLES3.shaders.uniform_block.random.nested_structs_instance_arrays.0,Fail
|
|
||||||
KHR-GLES31.core.shader_image_load_store.basic-allFormats-store-fs,Fail
|
KHR-GLES31.core.shader_image_load_store.basic-allFormats-store-fs,Fail
|
||||||
|
|
||||||
# deqp failures (pass with ACO)
|
|
||||||
dEQP-GLES3.functional.ubo.random.all_per_block_buffers.29,Fail
|
|
||||||
dEQP-GLES3.functional.ubo.random.basic_instance_arrays.22,Fail
|
|
||||||
dEQP-GLES3.functional.ubo.random.nested_structs.4,Fail
|
|
||||||
|
|
|
||||||
|
Loading…
Add table
Reference in a new issue