From 053b3618dc654e65bfa3f4d158a4322b74ae6dbe Mon Sep 17 00:00:00 2001 From: SachinVin <26602104+SachinVin@users.noreply.github.com> Date: Thu, 5 Oct 2023 22:58:26 +0530 Subject: [PATCH] Android: gl_shader_decompiler.cpp: get rid of the not-so-accurate multiplication (#7011) --- .../shader/generator/glsl_shader_decompiler.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/video_core/shader/generator/glsl_shader_decompiler.cpp b/src/video_core/shader/generator/glsl_shader_decompiler.cpp index ee012589b..4c8dffd64 100644 --- a/src/video_core/shader/generator/glsl_shader_decompiler.cpp +++ b/src/video_core/shader/generator/glsl_shader_decompiler.cpp @@ -828,13 +828,6 @@ private: void Generate() { if (sanitize_mul) { -#ifdef ANDROID - // Use a cheaper sanitize_mul on Android, as mobile GPUs struggle here - // This seems to be sufficient at least for Ocarina of Time and Attack on Titan accurate - // multiplication bugs - shader.AddLine( - "#define sanitize_mul(lhs, rhs) mix(lhs * rhs, vec4(0.0), isnan(lhs * rhs))"); -#else shader.AddLine("vec4 sanitize_mul(vec4 lhs, vec4 rhs) {{"); ++shader.scope; shader.AddLine("vec4 product = lhs * rhs;"); @@ -842,7 +835,6 @@ private: "isnan(lhs)), isnan(product));"); --shader.scope; shader.AddLine("}}\n"); -#endif } shader.AddLine("vec4 get_offset_register(int base_index, int offset) {{");