mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-03 16:39:01 -06:00 
			
		
		
		
	dyncom: Correct SXTAB16 and SXTB16
This commit is contained in:
		@@ -3928,13 +3928,13 @@ SXTB16_INST : {
 | 
			
		||||
        if (inst_cream->Rn == 15) {
 | 
			
		||||
            u32 lo = (u32)(s8)rm_val;
 | 
			
		||||
            u32 hi = (u32)(s8)(rm_val >> 16);
 | 
			
		||||
            RD = (lo | (hi << 16));
 | 
			
		||||
            RD = (lo & 0xFFFF) | (hi << 16);
 | 
			
		||||
        }
 | 
			
		||||
        // SXTAB16
 | 
			
		||||
        else {
 | 
			
		||||
            u32 lo = (rn_val & 0xFFFF) + (u32)(s8)(rm_val & 0xFF);
 | 
			
		||||
            u32 hi = ((rn_val >> 16) & 0xFFFF) + (u32)(s8)((rm_val >> 16) & 0xFF);
 | 
			
		||||
            RD = (lo | (hi << 16));
 | 
			
		||||
            u32 lo = rn_val + (u32)(s8)(rm_val & 0xFF);
 | 
			
		||||
            u32 hi = (rn_val >> 16) + (u32)(s8)((rm_val >> 16) & 0xFF);
 | 
			
		||||
            RD = (lo & 0xFFFF) | (hi << 16);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user