mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
radeonsi/gfx9: work around a GPU hang due to broken indirect indexing in LLVM
Fixes:6d19120da8"radeonsi/gfx9: workaround for INTERP with indirect indexing" Cc: 18.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> (cherry picked from commit597b9e8810)
This commit is contained in:
parent
421aedcc59
commit
1def4eaa5c
1 changed files with 9 additions and 0 deletions
|
|
@ -484,6 +484,15 @@ static int si_get_shader_param(struct pipe_screen* pscreen,
|
|||
!sscreen->llvm_has_working_vgpr_indexing)
|
||||
return 0;
|
||||
|
||||
/* Doing indirect indexing on GFX9 with LLVM 6.0 hangs.
|
||||
* This means we don't support INTERP instructions with
|
||||
* indirect indexing on inputs.
|
||||
*/
|
||||
if (shader == PIPE_SHADER_FRAGMENT &&
|
||||
!sscreen->llvm_has_working_vgpr_indexing &&
|
||||
HAVE_LLVM < 0x0700)
|
||||
return 0;
|
||||
|
||||
/* TCS and TES load inputs directly from LDS or offchip
|
||||
* memory, so indirect indexing is always supported.
|
||||
* PS has to support indirect indexing, because we can't
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue