Implementing WaDisableL1Cachability For Read/Write Buffer (#50)
diff --git a/Source/GmmLib/CachePolicy/GmmCachePolicyResourceUsageDefinitions.h b/Source/GmmLib/CachePolicy/GmmCachePolicyResourceUsageDefinitions.h
index 92283da..bc78e5e 100644
--- a/Source/GmmLib/CachePolicy/GmmCachePolicyResourceUsageDefinitions.h
+++ b/Source/GmmLib/CachePolicy/GmmCachePolicyResourceUsageDefinitions.h
@@ -338,3 +338,6 @@
//Uncacheable copies
DEFINE_RESOURCE_USAGE(GMM_RESOURCE_USAGE_COPY_SOURCE)
DEFINE_RESOURCE_USAGE(GMM_RESOURCE_USAGE_COPY_DEST)
+
+// Shader resource uncachable, needed for WA_18013889147
+DEFINE_RESOURCE_USAGE(GMM_RESOURCE_USAGE_SHADER_RESOURCE_L1_NOT_CACHED)
diff --git a/Source/GmmLib/CachePolicy/GmmGen12CachePolicy.h b/Source/GmmLib/CachePolicy/GmmGen12CachePolicy.h
index e355eaf..4b4a53c 100644
--- a/Source/GmmLib/CachePolicy/GmmGen12CachePolicy.h
+++ b/Source/GmmLib/CachePolicy/GmmGen12CachePolicy.h
@@ -302,5 +302,8 @@
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_COPY_SOURCE , 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, NA);
DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_COPY_DEST , 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, NA);
+// Shader resource uncachable, needed for WA_18013889147
+DEFINE_CACHE_ELEMENT(GMM_RESOURCE_USAGE_SHADER_RESOURCE_L1_NOT_CACHED , 0 , 1 , 1 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, RO );
+
#include "GmmCachePolicyUndefineConditionals.h"