mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-10-31 16:09:03 -05:00 
			
		
		
		
	Merge pull request #610 from Subv/mufu_8
GPU: Implemented MUFU suboperation 8, sqrt.
This commit is contained in:
		| @@ -166,6 +166,7 @@ enum class SubOp : u64 { | |||||||
|     Lg2 = 0x3, |     Lg2 = 0x3, | ||||||
|     Rcp = 0x4, |     Rcp = 0x4, | ||||||
|     Rsq = 0x5, |     Rsq = 0x5, | ||||||
|  |     Sqrt = 0x8, | ||||||
| }; | }; | ||||||
|  |  | ||||||
| enum class F2iRoundingOp : u64 { | enum class F2iRoundingOp : u64 { | ||||||
|   | |||||||
| @@ -917,6 +917,10 @@ private: | |||||||
|                     regs.SetRegisterToFloat(instr.gpr0, 0, "inversesqrt(" + op_a + ')', 1, 1, |                     regs.SetRegisterToFloat(instr.gpr0, 0, "inversesqrt(" + op_a + ')', 1, 1, | ||||||
|                                             instr.alu.saturate_d); |                                             instr.alu.saturate_d); | ||||||
|                     break; |                     break; | ||||||
|  |                 case SubOp::Sqrt: | ||||||
|  |                     regs.SetRegisterToFloat(instr.gpr0, 0, "sqrt(" + op_a + ')', 1, 1, | ||||||
|  |                                             instr.alu.saturate_d); | ||||||
|  |                     break; | ||||||
|                 default: |                 default: | ||||||
|                     NGLOG_CRITICAL(HW_GPU, "Unhandled MUFU sub op: {0:x}", |                     NGLOG_CRITICAL(HW_GPU, "Unhandled MUFU sub op: {0:x}", | ||||||
|                                    static_cast<unsigned>(instr.sub_op.Value())); |                                    static_cast<unsigned>(instr.sub_op.Value())); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 bunnei
					bunnei