diff options
| author | Marko Pusljar <LM1234@gmail.com> | 2010-03-22 16:32:48 +0000 |
|---|---|---|
| committer | Marko Pusljar <LM1234@gmail.com> | 2010-03-22 16:32:48 +0000 |
| commit | cac8fa8afc246dafce5ef132bb9ce0fcb34483de (patch) | |
| tree | 53059971b6c896b9a636cc64a5ec2106ea070487 /Source/Core/DSPCore/Src/DSPAnalyzer.cpp | |
| parent | 11a215567b8b096b2e9c02c51d0b4b26d9316f9d (diff) | |
DSPLLE - small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5221 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DSPCore/Src/DSPAnalyzer.cpp')
| -rw-r--r-- | Source/Core/DSPCore/Src/DSPAnalyzer.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Source/Core/DSPCore/Src/DSPAnalyzer.cpp b/Source/Core/DSPCore/Src/DSPAnalyzer.cpp index 2400f27274..80b86d728c 100644 --- a/Source/Core/DSPCore/Src/DSPAnalyzer.cpp +++ b/Source/Core/DSPCore/Src/DSPAnalyzer.cpp @@ -90,17 +90,18 @@ void AnalyzeRange(int start_addr, int end_addr) continue; } code_flags[addr] |= CODE_START_OF_INST; - addr += opcode->size; - - // Look for loops. + // Look for loops. (this is not used atm) if ((inst.hex & 0xffe0) == 0x0060 || (inst.hex & 0xff00) == 0x1100) { // BLOOP, BLOOPI u16 loop_end = dsp_imem_read(addr + 1); + code_flags[addr] |= CODE_LOOP_START; code_flags[loop_end] |= CODE_LOOP_END; } else if ((inst.hex & 0xffe0) == 0x0040 || (inst.hex & 0xff00) == 0x1000) { // LOOP, LOOPI + code_flags[addr] |= CODE_LOOP_START; code_flags[addr + 1] |= CODE_LOOP_END; } + addr += opcode->size; } // Next, we'll scan for potential idle skips. @@ -122,7 +123,6 @@ void AnalyzeRange(int start_addr, int end_addr) { NOTICE_LOG(DSPLLE, "Idle skip location found at %02x", addr); code_flags[addr] |= CODE_IDLE_SKIP; - // TODO: actually use this flag somewhere. } } } |
