mesa/src/amd/vulkan
Samuel Pitoiset bb8f87088c radv,aco: fix shifting input VGPRs for the LS VGPR init bug on GFX9
We were incorrectly shifting the input VGPRs for the instance ID
for chips affected by the LS VGPR init bug (ie. Vega10 and Raven).

When there is no HS threads, the hardware loads the LS VGPR
starting from VGPR 0, so they should be shifted by two.

This fixes some sort of vertex explosion with Squad, Visage, Barn
Finders and probably more titles that use tessellation. Note that
only Vega10 and Raven were affected by this bug.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4129
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3311
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Tested-by: Diego Viola <diego.viola@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8694>
2021-01-25 17:10:44 +00:00
..
layers ac/sqtt: move rgp/sqtt def to ac 2021-01-07 10:09:57 +01:00
winsys radv/winsys: Fix offset in range merging. 2021-01-11 12:01:34 +00:00
.editorconfig
Android.mk android: radv: add libcutils shared dependency 2020-12-07 23:54:25 +01:00
Makefile.sources ac/radv: move radv_rgp.c to ac 2021-01-07 10:09:49 +01:00
meson.build wsi/x11: Always link against xcb-xrandr 2021-01-07 14:57:45 +01:00
radv_android.c radv/android: Remove unused variable 2020-08-05 18:08:07 +00:00
radv_check_va.py radv: add a Python script to check if a VA was ever valid 2020-12-30 08:40:21 +01:00
radv_cmd_buffer.c radv: flush L2 for images affected by the pipe misaligned issue on GFX10+ 2021-01-19 19:51:44 +00:00
radv_constants.h radv: Remove RANGE_SIZE usage 2020-05-05 00:28:00 +00:00
radv_cs.h radv: Fix emitting SQTT userdata. 2020-09-28 15:46:08 +00:00
radv_debug.c radv: dump VA ranges history when a GPU hang is detected 2020-12-30 08:40:19 +01:00
radv_debug.h radv: add RADV_DEBUG=invariantgeom 2021-01-12 15:11:49 +00:00
radv_descriptor_set.c radv: Implement VK_VALVE_mutable_descriptor_type. 2020-12-07 15:25:17 +00:00
radv_descriptor_set.h radv: Do not access set layout during vkCmdBindDescriptorSets. 2020-10-28 03:06:20 +00:00
radv_device.c radv: enable sparseImageInt64Atomics/sparseImageFloat32Atomics 2021-01-25 16:00:50 +00:00
radv_entrypoints_gen.py Switch from cElementTree to ElementTree. 2020-06-05 23:42:54 -07:00
radv_extensions.py radv: Add a trivial implementation of VK_KHR_deferred_host_operation 2021-01-19 01:25:38 +01:00
radv_formats.c radv: mark VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT as unsupported on GFX6-7 2021-01-11 17:17:42 +00:00
radv_icd.py
radv_image.c radv: remove unnecessary radv_image::tc_compatible_htile 2021-01-20 17:18:39 +00:00
radv_llvm_helper.cpp radv/gfx10: use the correct target machine for Wave32 2019-08-02 09:37:38 +02:00
radv_meta.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta.h radv: make sure FMASK compression is enabled for MSAA copies 2020-12-23 11:25:34 +00:00
radv_meta_blit.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_blit2d.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_buffer.c radv: restore invalidating the vector cache for internal meta operations 2021-01-19 19:15:39 +00:00
radv_meta_bufimage.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_clear.c radv: remove redundant check in depth_view_can_fast_clear() 2021-01-20 17:18:39 +00:00
radv_meta_copy.c radv: Disable DCC explicitly for incompatible copies. 2020-12-21 18:32:24 +00:00
radv_meta_decompress.c radv: remove redundant check in radv_process_depth_stencil() 2021-01-20 17:18:39 +00:00
radv_meta_fast_clear.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_fmask_expand.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_resolve.c radv: add a comment explaining the micro tile mode resolve 2021-01-19 18:52:43 +01:00
radv_meta_resolve_cs.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_meta_resolve_fs.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_nir_lower_ycbcr_textures.c radv/meta: Use sized types for nir_tex_instr::dest_type 2021-01-25 11:21:42 +01:00
radv_nir_to_llvm.c radv,aco: fix shifting input VGPRs for the LS VGPR init bug on GFX9 2021-01-25 17:10:44 +00:00
radv_pass.c radv: fix separate depth/stencil layout in render pass 2021-01-22 15:54:18 +00:00
radv_pipeline.c radv: sink load_ssbo 2021-01-21 18:07:03 +00:00
radv_pipeline_cache.c radv: Replace pthread mutex with mtx_t 2020-12-02 11:27:01 +00:00
radv_private.h radv,aco: don't use MUBUF for multi-channel loads on GFX8 with robustness2 2021-01-20 17:57:56 +00:00
radv_query.c radv: fix a sync issue with geometry shader primitives query on GFX10+ 2021-01-21 08:15:43 +01:00
radv_radeon_winsys.h radv: Use VRAM for upload buffers if entire VRAM is CPU-visible. 2021-01-04 13:10:15 +00:00
radv_shader.c radv: use nir_opt_access 2021-01-21 18:07:03 +00:00
radv_shader.h radv,aco: don't use MUBUF for multi-channel loads on GFX8 with robustness2 2021-01-20 17:57:56 +00:00
radv_shader_args.c ac: unify shader arguments that are duplicated 2020-12-09 20:13:25 +00:00
radv_shader_args.h util+treewide: container_of() cleanup 2020-12-10 16:48:36 +00:00
radv_shader_helper.h radv/gfx10: use the correct target machine for Wave32 2019-08-02 09:37:38 +02:00
radv_shader_info.c nir,spirv: add sparse image loads 2021-01-06 20:36:38 +00:00
radv_sqtt.c ac,radv: add SQTT support on GFX10.3 2021-01-22 14:25:16 +00:00
radv_util.c radv: report errors back to the application via VK_EXT_debug_report 2020-08-10 14:09:21 +02:00
radv_util.h
radv_wsi.c vulkan/wsi: add sw support. (v2) 2020-08-17 14:30:50 +10:00
radv_wsi_display.c radv: Fix asserts using assign instead of compare. 2020-10-03 01:04:28 +00:00
radv_wsi_wayland.c
radv_wsi_x11.c
si_cmd_buffer.c radv: flush L2 metadata as part of CB/DB flush instead of CS_DONE on GFX9 2021-01-19 07:47:34 +01:00
vk_format.h radv: Wrap pragmas with __GNUC__ to fix MSVC 2020-12-02 11:27:01 +00:00
vk_format_layout.csv radv: Implement VK_EXT_4444_formats 2020-08-03 19:27:37 +01:00
vk_format_parse.py radv: Add logic for multisample format descriptions. 2019-04-25 19:56:20 +00:00
vk_format_table.py util: rename PIPE_ARCH_*_ENDIAN to UTIL_ARCH_*_ENDIAN 2019-11-05 16:39:55 +00:00
vulkan.sym radv: Add Android module info to linker script. 2021-01-12 20:17:52 +00:00