summaryrefslogtreecommitdiff
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorGravatar bunnei2018-08-30 10:31:26 -0400
committerGravatar GitHub2018-08-30 10:31:26 -0400
commitd6accf96ff08450f17c9ec71425037aa2dbddd7f (patch)
treee9110ef0cd78b866ced55aac4aeeefa458c66bc9 /src/video_core/engines
parentMerge pull request #1198 from lioncash/kernel (diff)
parentgl_shader_decompiler: Improve IPA for Pass mode with Position attribute. (diff)
downloadyuzu-d6accf96ff08450f17c9ec71425037aa2dbddd7f.tar.gz
yuzu-d6accf96ff08450f17c9ec71425037aa2dbddd7f.tar.xz
yuzu-d6accf96ff08450f17c9ec71425037aa2dbddd7f.zip
Merge pull request #1200 from bunnei/improve-ipa
gl_shader_decompiler: Improve IPA for Pass mode with Position attribute.
Diffstat (limited to 'src/video_core/engines')
-rw-r--r--src/video_core/engines/shader_bytecode.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/engines/shader_bytecode.h b/src/video_core/engines/shader_bytecode.h
index 96b745db8..dc98bdc3d 100644
--- a/src/video_core/engines/shader_bytecode.h
+++ b/src/video_core/engines/shader_bytecode.h
@@ -242,6 +242,8 @@ enum class TextureType : u64 {
242 TextureCube = 3, 242 TextureCube = 3,
243}; 243};
244 244
245enum class IpaMode : u64 { Pass = 0, None = 1, Constant = 2, Sc = 3 };
246
245union Instruction { 247union Instruction {
246 Instruction& operator=(const Instruction& instr) { 248 Instruction& operator=(const Instruction& instr) {
247 value = instr.value; 249 value = instr.value;
@@ -325,6 +327,10 @@ union Instruction {
325 } alu; 327 } alu;
326 328
327 union { 329 union {
330 BitField<54, 3, IpaMode> mode;
331 } ipa;
332
333 union {
328 BitField<48, 1, u64> negate_b; 334 BitField<48, 1, u64> negate_b;
329 } fmul; 335 } fmul;
330 336