summaryrefslogtreecommitdiff
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorGravatar bunnei2018-08-29 00:37:29 -0400
committerGravatar bunnei2018-08-29 00:37:29 -0400
commitb1ccd8843467e43838e19c50dcfcbc2ff0b3bc0b (patch)
tree12fe797d8597eab090085a46d34eb51acb9f1bc1 /src/video_core/engines
parentMerge pull request #1193 from lioncash/priv (diff)
downloadyuzu-b1ccd8843467e43838e19c50dcfcbc2ff0b3bc0b.tar.gz
yuzu-b1ccd8843467e43838e19c50dcfcbc2ff0b3bc0b.tar.xz
yuzu-b1ccd8843467e43838e19c50dcfcbc2ff0b3bc0b.zip
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 625ecdfcd..38ad1ae23 100644
--- a/src/video_core/engines/shader_bytecode.h
+++ b/src/video_core/engines/shader_bytecode.h
@@ -230,6 +230,8 @@ enum class TextureType : u64 {
230 TextureCube = 3, 230 TextureCube = 3,
231}; 231};
232 232
233enum class IpaMode : u64 { Pass = 0, None = 1, Constant = 2, Sc = 3 };
234
233union Instruction { 235union Instruction {
234 Instruction& operator=(const Instruction& instr) { 236 Instruction& operator=(const Instruction& instr) {
235 value = instr.value; 237 value = instr.value;
@@ -313,6 +315,10 @@ union Instruction {
313 } alu; 315 } alu;
314 316
315 union { 317 union {
318 BitField<54, 3, IpaMode> mode;
319 } ipa;
320
321 union {
316 BitField<48, 1, u64> negate_b; 322 BitField<48, 1, u64> negate_b;
317 } fmul; 323 } fmul;
318 324