Mesa (master): pan/mdg: Implement load_global_invocation_id
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Jan 1 03:14:23 UTC 2021
Module: Mesa
Branch: master
Commit: fbc97ab125265e087b4d940a22dc358339a026fd
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fbc97ab125265e087b4d940a22dc358339a026fd
Author: Icecream95 <ixn at disroot.org>
Date: Wed Dec 23 01:54:01 2020 +1300
pan/mdg: Implement load_global_invocation_id
NIR generates global_invocation_id, but Clover lowers it to
global_invocation_id_zero_base. It isn't lowered for OpenGL,
so we need to support both intrinsics.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8264>
---
src/panfrost/midgard/midgard_compile.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c
index accb5bc9331..c0be6a79f72 100644
--- a/src/panfrost/midgard/midgard_compile.c
+++ b/src/panfrost/midgard/midgard_compile.c
@@ -1310,6 +1310,9 @@ compute_builtin_arg(nir_op op)
return 0x14;
case nir_intrinsic_load_local_invocation_id:
return 0x10;
+ case nir_intrinsic_load_global_invocation_id:
+ case nir_intrinsic_load_global_invocation_id_zero_base:
+ return 0x18;
default:
unreachable("Invalid compute paramater loaded");
}
@@ -1797,6 +1800,8 @@ emit_intrinsic(compiler_context *ctx, nir_intrinsic_instr *instr)
case nir_intrinsic_load_work_group_id:
case nir_intrinsic_load_local_invocation_id:
+ case nir_intrinsic_load_global_invocation_id:
+ case nir_intrinsic_load_global_invocation_id_zero_base:
emit_compute_builtin(ctx, instr);
break;
More information about the mesa-commit
mailing list