Module: Mesa
Branch: main
Commit: 895cfca64139e985d044092a989182d637ff161e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=895cfca64139e985d044092a989182d637ff161e

Author: Caio Marcelo de Oliveira Filho <[email protected]>
Date:   Mon Sep 20 10:52:35 2021 -0700

spirv: Identify non-temporal memory access

Map it to the existing ACCESS_STREAM_CACHE_POLICY access mode.

Reviewed-by: Jason Ekstrand <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12945>

---

 src/compiler/spirv/vtn_variables.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/compiler/spirv/vtn_variables.c 
b/src/compiler/spirv/vtn_variables.c
index fc1cdc19a63..efa18c9b1d6 100644
--- a/src/compiler/spirv/vtn_variables.c
+++ b/src/compiler/spirv/vtn_variables.c
@@ -2247,10 +2247,14 @@ vtn_get_mem_operands(struct vtn_builder *b, const 
uint32_t *w, unsigned count,
 static enum gl_access_qualifier
 spv_access_to_gl_access(SpvMemoryAccessMask access)
 {
+   unsigned result = 0;
+
    if (access & SpvMemoryAccessVolatileMask)
-      return ACCESS_VOLATILE;
+      result |= ACCESS_VOLATILE;
+   if (access & SpvMemoryAccessNontemporalMask)
+      result |= ACCESS_STREAM_CACHE_POLICY;
 
-   return 0;
+   return result;
 }
 
 

Reply via email to