mirror of
				https://git.h3cjp.net/H3cJP/citra.git
				synced 2025-10-30 22:44:58 +00:00 
			
		
		
		
	Merge pull request #3437 from namkazt/patch-5
shader_conversion: add conversion I2F for Short
This commit is contained in:
		
						commit
						fd4c5463e8
					
				|  | @ -83,14 +83,14 @@ u32 ShaderIR::DecodeConversion(NodeBlock& bb, u32 pc) { | |||
| 
 | ||||
|         const bool input_signed = instr.conversion.is_input_signed; | ||||
| 
 | ||||
|         if (instr.conversion.src_size == Register::Size::Byte) { | ||||
|             const u32 offset = static_cast<u32>(instr.conversion.int_src.selector) * 8; | ||||
|             if (offset > 0) { | ||||
|                 value = SignedOperation(OperationCode::ILogicalShiftRight, input_signed, | ||||
|                                         std::move(value), Immediate(offset)); | ||||
|         if (const u32 offset = static_cast<u32>(instr.conversion.int_src.selector); offset > 0) { | ||||
|             ASSERT(instr.conversion.src_size == Register::Size::Byte || | ||||
|                    instr.conversion.src_size == Register::Size::Short); | ||||
|             if (instr.conversion.src_size == Register::Size::Short) { | ||||
|                 ASSERT(offset == 0 || offset == 2); | ||||
|             } | ||||
|         } else { | ||||
|             UNIMPLEMENTED_IF(instr.conversion.int_src.selector != 0); | ||||
|             value = SignedOperation(OperationCode::ILogicalShiftRight, input_signed, | ||||
|                                     std::move(value), Immediate(offset * 8)); | ||||
|         } | ||||
| 
 | ||||
|         value = ConvertIntegerSize(value, instr.conversion.src_size, input_signed); | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue