diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-08-24 06:48:15 +0200 |
---|---|---|
committer | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-08-24 06:48:15 +0200 |
commit | 630a850d4d5a0509b16e96aaccc81e9384e1fba8 (patch) | |
tree | 01a553c46e23e4f5d2b92ec1faf1a4b72a8e1466 /src/video_core/shader/shader_jit_x64.h | |
parent | Shaders: Explicitly conform to PICA semantics in MAX/MIN (diff) | |
download | yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar.gz yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar.bz2 yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar.lz yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar.xz yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.tar.zst yuzu-630a850d4d5a0509b16e96aaccc81e9384e1fba8.zip |
Diffstat (limited to 'src/video_core/shader/shader_jit_x64.h')
-rw-r--r-- | src/video_core/shader/shader_jit_x64.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/shader/shader_jit_x64.h b/src/video_core/shader/shader_jit_x64.h index fbe19fe93..58828ecc8 100644 --- a/src/video_core/shader/shader_jit_x64.h +++ b/src/video_core/shader/shader_jit_x64.h @@ -68,6 +68,12 @@ private: void Compile_SwizzleSrc(Instruction instr, unsigned src_num, SourceRegister src_reg, Gen::X64Reg dest); void Compile_DestEnable(Instruction instr, Gen::X64Reg dest); + /** + * Compiles a `MUL src1, src2` operation, properly handling the PICA semantics when multiplying + * zero by inf. Clobbers `src2` and `scratch`. + */ + void Compile_SanitizedMul(Gen::X64Reg src1, Gen::X64Reg src2, Gen::X64Reg scratch); + void Compile_EvaluateCondition(Instruction instr); void Compile_UniformCondition(Instruction instr); |