diff options
Diffstat (limited to 'src/shader_recompiler/frontend/ir/modifiers.h')
| -rw-r--r-- | src/shader_recompiler/frontend/ir/modifiers.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/shader_recompiler/frontend/ir/modifiers.h b/src/shader_recompiler/frontend/ir/modifiers.h index 28bb9e798..c288eede0 100644 --- a/src/shader_recompiler/frontend/ir/modifiers.h +++ b/src/shader_recompiler/frontend/ir/modifiers.h | |||
| @@ -6,13 +6,13 @@ | |||
| 6 | 6 | ||
| 7 | namespace Shader::IR { | 7 | namespace Shader::IR { |
| 8 | 8 | ||
| 9 | enum class FmzMode { | 9 | enum class FmzMode : u8 { |
| 10 | None, // Denorms are not flushed, NAN is propagated (nouveau) | 10 | None, // Denorms are not flushed, NAN is propagated (nouveau) |
| 11 | FTZ, // Flush denorms to zero, NAN is propagated (D3D11, NVN, GL, VK) | 11 | FTZ, // Flush denorms to zero, NAN is propagated (D3D11, NVN, GL, VK) |
| 12 | FMZ, // Flush denorms to zero, x * 0 == 0 (D3D9) | 12 | FMZ, // Flush denorms to zero, x * 0 == 0 (D3D9) |
| 13 | }; | 13 | }; |
| 14 | 14 | ||
| 15 | enum class FpRounding { | 15 | enum class FpRounding : u8 { |
| 16 | RN, // Round to nearest even, | 16 | RN, // Round to nearest even, |
| 17 | RM, // Round towards negative infinity | 17 | RM, // Round towards negative infinity |
| 18 | RP, // Round towards positive infinity | 18 | RP, // Round towards positive infinity |
| @@ -21,8 +21,8 @@ enum class FpRounding { | |||
| 21 | 21 | ||
| 22 | struct FpControl { | 22 | struct FpControl { |
| 23 | bool no_contraction{false}; | 23 | bool no_contraction{false}; |
| 24 | FpRounding rounding : 8 = FpRounding::RN; | 24 | FpRounding rounding{FpRounding::RN}; |
| 25 | FmzMode fmz_mode : 8 = FmzMode::FTZ; | 25 | FmzMode fmz_mode{FmzMode::FTZ}; |
| 26 | }; | 26 | }; |
| 27 | static_assert(sizeof(FpControl) <= sizeof(u64)); | 27 | static_assert(sizeof(FpControl) <= sizeof(u32)); |
| 28 | } // namespace Shader::IR | 28 | } // namespace Shader::IR |