Latte/Vulkan: Set RoundingModeRTE for all float types

Seems like GLSL's unpackHalf2x16() is affected by the 16bit rounding setting
This commit is contained in:
Exzap 2023-03-02 16:18:50 +01:00
parent f8ea594447
commit 466ad8d35e
4 changed files with 27 additions and 24 deletions

View file

@ -309,7 +309,10 @@ namespace LatteDecompiler
if (decompilerContext->options->spirvInstrinsics.hasRoundingModeRTEFloat32)
{
src->add("#extension GL_EXT_spirv_intrinsics: enable" _CRLF);
src->add("spirv_execution_mode(4462, 32);" _CRLF); // RoundingModeRTE 32
// set RoundingModeRTE
src->add("spirv_execution_mode(4462, 16);" _CRLF);
src->add("spirv_execution_mode(4462, 32);" _CRLF);
src->add("spirv_execution_mode(4462, 64);" _CRLF);
}
src->add("#else" _CRLF);
// OpenGL defines