diff options
author | Marek Olšák <[email protected]> | 2019-07-31 21:16:12 -0400 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2019-08-12 14:52:17 -0400 |
commit | 9fb2fd0b433a47a6460668f3ecfae014cfacc5df (patch) | |
tree | f71953461a5728734020851b4b88f3e014d399d0 | |
parent | 902dd50cf0f31fe1e730ee077c9e23716d06e066 (diff) |
compiler: add ACCESS_STREAM_CACHE_POLICY
radeonsi will use this.
Reviewed-by: Connor Abbott <[email protected]>
-rw-r--r-- | src/amd/common/ac_nir_to_llvm.c | 3 | ||||
-rw-r--r-- | src/compiler/shader_enums.h | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index 42ca6a41df8..440d4ec9e5e 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -1549,6 +1549,9 @@ static unsigned get_cache_policy(struct ac_nir_context *ctx, cache_policy |= ac_glc; } + if (access & ACCESS_STREAM_CACHE_POLICY) + cache_policy |= ac_slc; + return cache_policy; } diff --git a/src/compiler/shader_enums.h b/src/compiler/shader_enums.h index 5c6437749b8..d9eb290abf4 100644 --- a/src/compiler/shader_enums.h +++ b/src/compiler/shader_enums.h @@ -736,6 +736,9 @@ enum gl_access_qualifier * a lack of ACCESS_COHERENT and ACCESS_VOLATILE. */ ACCESS_CAN_REORDER = (1 << 6), + + /** Use as little cache space as possible. */ + ACCESS_STREAM_CACHE_POLICY = (1 << 7), }; /** |