diff options
| author | 2018-08-30 10:31:26 -0400 | |
|---|---|---|
| committer | 2018-08-30 10:31:26 -0400 | |
| commit | d6accf96ff08450f17c9ec71425037aa2dbddd7f (patch) | |
| tree | e9110ef0cd78b866ced55aac4aeeefa458c66bc9 /src/video_core/engines | |
| parent | Merge pull request #1198 from lioncash/kernel (diff) | |
| parent | gl_shader_decompiler: Improve IPA for Pass mode with Position attribute. (diff) | |
| download | yuzu-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.h | 6 |
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 | ||
| 245 | enum class IpaMode : u64 { Pass = 0, None = 1, Constant = 2, Sc = 3 }; | ||
| 246 | |||
| 245 | union Instruction { | 247 | union 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 | ||