mirror of
				https://github.com/hedge-dev/XenonRecomp.git
				synced 2025-10-30 07:11:38 +00:00 
			
		
		
		
	make store instructions check for mmio
This commit is contained in:
		
							parent
							
								
									830be1f69a
								
							
						
					
					
						commit
						9ff80d8321
					
				
					 1 changed files with 11 additions and 11 deletions
				
			
		|  | @ -1606,7 +1606,7 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STBU: |     case PPC_INST_STBU: | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U8({}, {}.u8);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u8);", mmioStore() ? "PPC_MM_STORE_U8(" : "PPC_STORE_U8(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1619,7 +1619,7 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STBUX: |     case PPC_INST_STBUX: | ||||||
|         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U8({}, {}.u8);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u8);", mmioStore() ? "PPC_MM_STORE_U8(" : "PPC_STORE_U8(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1642,7 +1642,7 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STDU: |     case PPC_INST_STDU: | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U64({}, {}.u64);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u64);", mmioStore() ? "PPC_MM_STORE_U64(" : "PPC_STORE_U64(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1655,7 +1655,7 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STDUX: |     case PPC_INST_STDUX: | ||||||
|         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U64({}, {}.u64);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u64);", mmioStore() ? "PPC_MM_STORE_U64(" : "PPC_STORE_U64(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1670,7 +1670,7 @@ bool Recompiler::Recompile( | ||||||
|     case PPC_INST_STFDU: |     case PPC_INST_STFDU: | ||||||
|         printSetFlushMode(false); |         printSetFlushMode(false); | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U64({}, {}.u64);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u64);", mmioStore() ? "PPC_MM_STORE_U64(" : "PPC_STORE_U64(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1703,7 +1703,7 @@ bool Recompiler::Recompile( | ||||||
|         printSetFlushMode(false); |         printSetFlushMode(false); | ||||||
|         println("\t{}.f32 = float({}.f64);", temp(), f(insn.operands[0])); |         println("\t{}.f32 = float({}.f64);", temp(), f(insn.operands[0])); | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U32({}, {}.u32);", ea(), temp()); |         println("\t{}{}, {}.u32);", mmioStore() ? "PPC_MM_STORE_U32(" : "PPC_STORE_U32(", ea(), temp()); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1720,7 +1720,7 @@ bool Recompiler::Recompile( | ||||||
|         printSetFlushMode(false); |         printSetFlushMode(false); | ||||||
|         println("\t{}.f32 = float({}.f64);", temp(), f(insn.operands[0])); |         println("\t{}.f32 = float({}.f64);", temp(), f(insn.operands[0])); | ||||||
|         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U32({}, {}.u32);", ea(), temp()); |         println("\t{}{}, {}.u32);", mmioStore() ? "PPC_MM_STORE_U32(" : "PPC_STORE_U32(", ea(), temp()); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1733,13 +1733,13 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STHU: |     case PPC_INST_STHU: | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U16({}, {}.u16);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u16);", mmioStore() ? "PPC_MM_STORE_U16(" : "PPC_STORE_U16(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STHUX: |     case PPC_INST_STHUX: | ||||||
|         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U16({}, {}.u16);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u16);", mmioStore() ? "PPC_MM_STORE_U16(" : "PPC_STORE_U16(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  | @ -1838,13 +1838,13 @@ bool Recompiler::Recompile( | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STWU: |     case PPC_INST_STWU: | ||||||
|         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {} + {}.u32;", ea(), int32_t(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U32({}, {}.u32);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u32);", mmioStore() ? "PPC_MM_STORE_U32(" : "PPC_STORE_U32(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[2]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|     case PPC_INST_STWUX: |     case PPC_INST_STWUX: | ||||||
|         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); |         println("\t{} = {}.u32 + {}.u32;", ea(), r(insn.operands[1]), r(insn.operands[2])); | ||||||
|         println("\tPPC_STORE_U32({}, {}.u32);", ea(), r(insn.operands[0])); |         println("\t{}{}, {}.u32);", mmioStore() ? "PPC_MM_STORE_U32(" : "PPC_STORE_U32(", ea(), r(insn.operands[0])); | ||||||
|         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); |         println("\t{}.u32 = {};", r(insn.operands[1]), ea()); | ||||||
|         break; |         break; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 DeaTh-G
						DeaTh-G