aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTimur Kristóf <[email protected]>2020-04-01 16:02:13 +0200
committerMarge Bot <[email protected]>2020-04-07 11:29:35 +0000
commite4da482d9e94c2ca5935c8cbb864287aa192778a (patch)
treef35ab18c52e323cb2e24bc37589056d29fdc6a2a /src
parentc633edad72dbc65fb8ba30a623163fcf1840361a (diff)
aco/ngg: Schedule position exports of NGG VS/TES.
Similarly to the HW VS stage, the HW NGG GS stage also benefits from executing these exports as early as possible. Signed-off-by: Timur Kristóf <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3576>
Diffstat (limited to 'src')
-rw-r--r--src/amd/compiler/aco_scheduler.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/compiler/aco_scheduler.cpp b/src/amd/compiler/aco_scheduler.cpp
index d7cf90be189..d07b4e381ab 100644
--- a/src/amd/compiler/aco_scheduler.cpp
+++ b/src/amd/compiler/aco_scheduler.cpp
@@ -843,7 +843,7 @@ void schedule_block(sched_ctx& ctx, Program *program, Block* block, live& live_v
}
}
- if ((program->stage & hw_vs) && block->index == program->blocks.size() - 1) {
+ if ((program->stage & (hw_vs | hw_ngg_gs)) && (block->kind & block_kind_export_end)) {
/* Try to move position exports as far up as possible, to reduce register
* usage and because ISA reference guides say so. */
for (unsigned idx = 0; idx < block->instructions.size(); idx++) {