mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-07 02:10:12 +01:00
radeonsi/gfx9: compile shaders with +xnack
so that LLVM doesn't allocate SGPRs where XNACK is. Cc: 17.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
parent
499f45163a
commit
2beb31bd7c
1 changed files with 7 additions and 6 deletions
|
|
@ -33,9 +33,6 @@
|
|||
#include "vl/vl_decoder.h"
|
||||
#include "../ddebug/dd_util.h"
|
||||
|
||||
#define SI_LLVM_DEFAULT_FEATURES \
|
||||
"+DumpCode,+vgpr-spilling,-fp32-denormals,-xnack"
|
||||
|
||||
/*
|
||||
* pipe_context
|
||||
*/
|
||||
|
|
@ -127,12 +124,16 @@ static LLVMTargetMachineRef
|
|||
si_create_llvm_target_machine(struct si_screen *sscreen)
|
||||
{
|
||||
const char *triple = "amdgcn--";
|
||||
char features[256];
|
||||
|
||||
snprintf(features, sizeof(features),
|
||||
"+DumpCode,+vgpr-spilling,-fp32-denormals,+fp64-denormals%s%s",
|
||||
sscreen->b.chip_class >= GFX9 ? ",+xnack" : ",-xnack",
|
||||
sscreen->b.debug_flags & DBG_SI_SCHED ? ",+si-scheduler" : "");
|
||||
|
||||
return LLVMCreateTargetMachine(si_llvm_get_amdgpu_target(triple), triple,
|
||||
r600_get_llvm_processor_name(sscreen->b.family),
|
||||
sscreen->b.debug_flags & DBG_SI_SCHED ?
|
||||
SI_LLVM_DEFAULT_FEATURES ",+si-scheduler" :
|
||||
SI_LLVM_DEFAULT_FEATURES,
|
||||
features,
|
||||
LLVMCodeGenLevelDefault,
|
||||
LLVMRelocDefault,
|
||||
LLVMCodeModelDefault);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue