diff options
author | Daniel Schürmann <daniel@schuermann.dev> | 2019-11-20 18:57:23 +0100 |
---|---|---|
committer | Daniel Schürmann <daniel@schuermann.dev> | 2019-12-07 11:23:11 +0100 |
commit | 9254fb4fc72ed289ffded28ef067b4582973e90c (patch) | |
tree | 65946beed34fe0301ac772a3534b6b22f1c14539 /src/amd/compiler/aco_reduce_assign.cpp | |
parent | 8ad43d88384dcf4d3aa6ac95b2dddedc80ecf457 (diff) | |
download | mesa-9254fb4fc72ed289ffded28ef067b4582973e90c.tar.gz |
aco: don't use a scalar temporary for reductions on GFX10
This patch also adds the scalar temporary for scans on SI/CI
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Diffstat (limited to 'src/amd/compiler/aco_reduce_assign.cpp')
-rw-r--r-- | src/amd/compiler/aco_reduce_assign.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/compiler/aco_reduce_assign.cpp b/src/amd/compiler/aco_reduce_assign.cpp index 68a0dc15761..f1015b13316 100644 --- a/src/amd/compiler/aco_reduce_assign.cpp +++ b/src/amd/compiler/aco_reduce_assign.cpp @@ -153,7 +153,7 @@ void setup_reduce_temp(Program* program) instr->definitions[1] = bld.def(s2); /* scalar identity temporary */ - bool need_sitmp = program->chip_class >= GFX10 && cluster_size == 64; + bool need_sitmp = (program->chip_class <= GFX7 || program->chip_class >= GFX10) && instr->opcode != aco_opcode::p_reduce; if (instr->opcode == aco_opcode::p_exclusive_scan) { need_sitmp |= (op == imin32 || op == imin64 || op == imax32 || op == imax64 || |