diff options
| author | noone <you@example.com> | 2024-07-31 19:22:32 -0500 |
|---|---|---|
| committer | Alexander Taylor <alex@vector35.com> | 2024-08-12 15:50:54 -0400 |
| commit | c79af77b50dee80dcba9800e42e94eb6abb3e53a (patch) | |
| tree | 0ae19d250f6dfbd2d69c8b14f86d72128a60b635 | |
| parent | 5d75e51b89e4ea10ca21e50bfda1a433c3cbe861 (diff) | |
Differentiate some enums in IL switch statement
This makes it easier to see which instructions still need to be lifted
versus those which never should be lifted.
| -rw-r--r-- | arch/mips/il.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/arch/mips/il.cpp b/arch/mips/il.cpp index 14829c63..e056c7aa 100644 --- a/arch/mips/il.cpp +++ b/arch/mips/il.cpp @@ -2114,13 +2114,9 @@ bool GetLowLevelILForInstruction(Architecture* arch, uint64_t addr, LowLevelILFu //unimplemented system functions case MIPS_BC1ANY2: case MIPS_BC1ANY4: - case MIPS_BSHFL: case MIPS_C2: case MIPS_CFC1: case MIPS_CFC2: - case MIPS_COP0: - case MIPS_COP1: - case MIPS_COP1X: case MIPS_COP2: case MIPS_COP3: case MIPS_CTC1: @@ -2146,6 +2142,17 @@ bool GetLowLevelILForInstruction(Architecture* arch, uint64_t addr, LowLevelILFu case MIPS_SWXC1: il.AddInstruction(il.Unimplemented()); break; + + // instructions that are just internal placeholders for other + // decode tables; these will never be implemented because they're + // not real instructions + case MIPS_BSHFL: + case MIPS_COP0: + case MIPS_COP1: + case MIPS_COP1X: + il.AddInstruction(il.Undefined()); + break; + default: il.AddInstruction(il.Unimplemented()); break; |
