mirror of
				https://github.com/hedge-dev/XenonRecomp.git
				synced 2025-10-30 07:11:38 +00:00 
			
		
		
		
	Add a check for missing switch cases.
This commit is contained in:
		
							parent
							
								
									175c0de2ac
								
							
						
					
					
						commit
						989ed13d04
					
				
					 2 changed files with 9 additions and 0 deletions
				
			
		|  | @ -1,5 +1,11 @@ | |||
| #pragma once | ||||
| 
 | ||||
| // Workaround for the intellisense for some reason not seeing C++23 features
 | ||||
| #ifdef __INTELLISENSE__ | ||||
| #undef __cplusplus | ||||
| #define __cplusplus 202302L | ||||
| #endif | ||||
| 
 | ||||
| #include <cassert> | ||||
| #include <disasm.h> | ||||
| #include <file.h> | ||||
|  |  | |||
|  | @ -1780,6 +1780,9 @@ bool Recompiler::Recompile(const Function& fn) | |||
|         } | ||||
|         else | ||||
|         { | ||||
|             if (insn.opcode->id == PPC_INST_BCTR && (*(data - 1) == 0x07008038 || *(data - 1) == 0x00000060) && switchTable == switchTables.end()) | ||||
|                 std::println("Found a switch jump table at {:X} with no switch table entry present", base); | ||||
| 
 | ||||
|             if (!Recompile(fn, base, insn, switchTable)) | ||||
|             { | ||||
|                 std::println("Unrecognized instruction at 0x{:X}: {}", base, insn.opcode->name); | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Skyth
						Skyth