aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines/shader_bytecode.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-06-06 22:21:29 -0400
committerbunnei <bunneidev@gmail.com>2018-06-06 22:21:29 -0400
commit128aeba0f3fc2477f91a00b1aba866f113a6945f (patch)
tree1022593280140fa23c14b78c7dfebf0b20ea1cfe /src/video_core/engines/shader_bytecode.h
parent03f877919dfef7319193dc1163e39c884ac14e47 (diff)
gl_shader_decompiler: F2F: Implement rounding modes.
Diffstat (limited to 'src/video_core/engines/shader_bytecode.h')
-rw-r--r--src/video_core/engines/shader_bytecode.h15
1 files changed, 12 insertions, 3 deletions
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;