From 2a0d707ce1d4880dfcbd34c4d6572917a501f675 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 11 Jan 2024 16:50:59 -0500 Subject: shader_recompiler: emulate 8-bit and 16-bit storage writes with cas loop --- src/shader_recompiler/backend/spirv/spirv_emit_context.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/shader_recompiler/backend/spirv/spirv_emit_context.h') diff --git a/src/shader_recompiler/backend/spirv/spirv_emit_context.h b/src/shader_recompiler/backend/spirv/spirv_emit_context.h index 56019ad89..40adcb6b6 100644 --- a/src/shader_recompiler/backend/spirv/spirv_emit_context.h +++ b/src/shader_recompiler/backend/spirv/spirv_emit_context.h @@ -325,6 +325,8 @@ public: Id f32x2_min_cas{}; Id f32x2_max_cas{}; + Id write_storage_cas_loop_func{}; + Id load_global_func_u32{}; Id load_global_func_u32x2{}; Id load_global_func_u32x4{}; @@ -372,6 +374,7 @@ private: void DefineTextures(const Info& info, u32& binding, u32& scaling_index); void DefineImages(const Info& info, u32& binding, u32& scaling_index); void DefineAttributeMemAccess(const Info& info); + void DefineWriteStorageCasLoopFunction(const Info& info); void DefineGlobalMemoryFunctions(const Info& info); void DefineRescalingInput(const Info& info); void DefineRescalingInputPushConstant(); -- cgit v1.2.3