From 128aeba0f3fc2477f91a00b1aba866f113a6945f Mon Sep 17 00:00:00 2001 From: bunnei Date: Wed, 6 Jun 2018 22:21:29 -0400 Subject: gl_shader_decompiler: F2F: Implement rounding modes. --- src/video_core/engines/shader_bytecode.h | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'src/video_core/engines') diff --git a/src/video_core/engines/shader_bytecode.h b/src/video_core/engines/shader_bytecode.h index ab45cfbef..2cda1e63e 100644 --- a/src/video_core/engines/shader_bytecode.h +++ b/src/video_core/engines/shader_bytecode.h @@ -168,13 +168,22 @@ enum class SubOp : u64 { Min = 0x8, }; -enum class FloatRoundingOp : u64 { +enum class F2iRoundingOp : u64 { None = 0, Floor = 1, Ceil = 2, Trunc = 3, }; +enum class F2fRoundingOp : u64 { + None = 0, + Pass = 3, + Round = 8, + Floor = 9, + Ceil = 10, + Trunc = 11, +}; + enum class UniformType : u64 { UnsignedByte = 0, SignedByte = 1, @@ -314,11 +323,11 @@ union Instruction { BitField<50, 1, u64> saturate_a; union { - BitField<39, 2, FloatRoundingOp> rounding; + BitField<39, 2, F2iRoundingOp> rounding; } f2i; union { - BitField<39, 4, u64> rounding; + BitField<39, 4, F2fRoundingOp> rounding; } f2f; } conversion; -- cgit v1.2.3