aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>2019-07-18 13:51:32 (GMT)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>2019-07-22 07:02:39 (GMT)
commitd76746c1ffbcb4af1c457a56cda6dd848acebc2e (patch)
treec004753ef991006938d9e2ab7e0a0e64cea4184e
parent8c97a079677695c884090cde49fbe35ffa92500a (diff)
downloadexternal_mesa3d-d76746c1ffbcb4af1c457a56cda6dd848acebc2e.zip
external_mesa3d-d76746c1ffbcb4af1c457a56cda6dd848acebc2e.tar.gz
external_mesa3d-d76746c1ffbcb4af1c457a56cda6dd848acebc2e.tar.bz2
radv/gfx10: emit the GS NGG prologue before the nested barrier
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
-rw-r--r--src/amd/vulkan/radv_nir_to_llvm.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c
index 27b46d2..fa1413b 100644
--- a/src/amd/vulkan/radv_nir_to_llvm.c
+++ b/src/amd/vulkan/radv_nir_to_llvm.c
@@ -4455,6 +4455,7 @@ LLVMModuleRef ac_translate_nir_to_llvm(struct ac_llvm_compiler *ac_llvm,
if (i) {
if (shaders[i]->info.stage == MESA_SHADER_GEOMETRY &&
ctx.options->key.vs_common_out.as_ngg) {
+ gfx10_ngg_gs_emit_prologue(&ctx);
nested_barrier = false;
} else {
nested_barrier = true;
@@ -4497,12 +4498,6 @@ LLVMModuleRef ac_translate_nir_to_llvm(struct ac_llvm_compiler *ac_llvm,
LLVMBasicBlockRef merge_block;
if (shader_count >= 2 || is_ngg) {
-
- if (shaders[i]->info.stage == MESA_SHADER_GEOMETRY &&
- ctx.options->key.vs_common_out.as_ngg) {
- gfx10_ngg_gs_emit_prologue(&ctx);
- }
-
LLVMValueRef fn = LLVMGetBasicBlockParent(LLVMGetInsertBlock(ctx.ac.builder));
LLVMBasicBlockRef then_block = LLVMAppendBasicBlockInContext(ctx.ac.context, fn, "");
merge_block = LLVMAppendBasicBlockInContext(ctx.ac.context, fn, "");