mirror of
				https://github.com/hedge-dev/XenonRecomp.git
				synced 2025-10-30 07:11:38 +00:00 
			
		
		
		
	Implement subfme
This commit is contained in:
		
							parent
							
								
									4e77be82ce
								
							
						
					
					
						commit
						fd85a418a8
					
				
					 1 changed files with 10 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -1744,6 +1744,16 @@ bool Recompiler::Recompile(
 | 
			
		|||
        println("\t{}.s64 = {} - {}.s64;", r(insn.operands[0]), int32_t(insn.operands[2]), r(insn.operands[1]));
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
    case PPC_INST_SUBFME:
 | 
			
		||||
        println("\t{}.u64 = ~{}.u64 + {}.ca - 1;", temp(), r(insn.operands[1]), xer());
 | 
			
		||||
        println("\t{}.ca = ({}.u64 < ~{}.u64) || ({}.u64 == ~{}.u64 && {}.ca);", xer(), 
 | 
			
		||||
            temp(), r(insn.operands[1]), temp(), r(insn.operands[1]), xer());
 | 
			
		||||
        println("\t{}.u64 = {}.u64;", r(insn.operands[0]), temp());
 | 
			
		||||
        if (strchr(insn.opcode->name, '.'))
 | 
			
		||||
            println("\t{}.compare<int32_t>({}.s32, 0, {});", 
 | 
			
		||||
                cr(0), r(insn.operands[0]), xer());
 | 
			
		||||
        break;
 | 
			
		||||
 | 
			
		||||
    case PPC_INST_SYNC:
 | 
			
		||||
        // no op
 | 
			
		||||
        break;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue