diff options
| author | 2021-03-10 22:42:17 -0500 | |
|---|---|---|
| committer | 2021-07-22 21:51:23 -0400 | |
| commit | ba8c1d2eb479d04b2b0d847efd67468b688765d4 (patch) | |
| tree | c92c17f08ed3b313bbdb66917767ef8074d43c92 /src/shader_recompiler/ir_opt | |
| parent | shader: Partial implementation of LDC (diff) | |
| download | yuzu-ba8c1d2eb479d04b2b0d847efd67468b688765d4.tar.gz yuzu-ba8c1d2eb479d04b2b0d847efd67468b688765d4.tar.xz yuzu-ba8c1d2eb479d04b2b0d847efd67468b688765d4.zip | |
shader: Implement FCMP
still need to configure some settings for NV denorm flush and intel NaN
Diffstat (limited to 'src/shader_recompiler/ir_opt')
| -rw-r--r-- | src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp index cdbe85221..70d75ad6c 100644 --- a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp +++ b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | |||
| @@ -256,7 +256,19 @@ void VisitFpModifiers(Info& info, IR::Inst& inst) { | |||
| 256 | case IR::Opcode::FPRoundEven32: | 256 | case IR::Opcode::FPRoundEven32: |
| 257 | case IR::Opcode::FPFloor32: | 257 | case IR::Opcode::FPFloor32: |
| 258 | case IR::Opcode::FPCeil32: | 258 | case IR::Opcode::FPCeil32: |
| 259 | case IR::Opcode::FPTrunc32: { | 259 | case IR::Opcode::FPTrunc32: |
| 260 | case IR::Opcode::FPOrdEqual32: | ||
| 261 | case IR::Opcode::FPUnordEqual32: | ||
| 262 | case IR::Opcode::FPOrdNotEqual32: | ||
| 263 | case IR::Opcode::FPUnordNotEqual32: | ||
| 264 | case IR::Opcode::FPOrdLessThan32: | ||
| 265 | case IR::Opcode::FPUnordLessThan32: | ||
| 266 | case IR::Opcode::FPOrdGreaterThan32: | ||
| 267 | case IR::Opcode::FPUnordGreaterThan32: | ||
| 268 | case IR::Opcode::FPOrdLessThanEqual32: | ||
| 269 | case IR::Opcode::FPUnordLessThanEqual32: | ||
| 270 | case IR::Opcode::FPOrdGreaterThanEqual32: | ||
| 271 | case IR::Opcode::FPUnordGreaterThanEqual32: { | ||
| 260 | const auto control{inst.Flags<IR::FpControl>()}; | 272 | const auto control{inst.Flags<IR::FpControl>()}; |
| 261 | switch (control.fmz_mode) { | 273 | switch (control.fmz_mode) { |
| 262 | case IR::FmzMode::DontCare: | 274 | case IR::FmzMode::DontCare: |