From 1ba43e6c278a6ea0bc185b747565fc2fe92a09fb Mon Sep 17 00:00:00 2001 From: Michael M Date: Fri, 23 Jun 2017 22:39:52 -0700 Subject: [PATCH] DSPSymbols: remove unused ReadAnnotatedAssembly It's unused, and it used a weird format, something like: ``` void label_name() { asm $REG1, $REG2 // etc } ``` --- Source/Core/Core/HW/DSPLLE/DSPSymbols.cpp | 135 ---------------------- Source/Core/Core/HW/DSPLLE/DSPSymbols.h | 1 - 2 files changed, 136 deletions(-) diff --git a/Source/Core/Core/HW/DSPLLE/DSPSymbols.cpp b/Source/Core/Core/HW/DSPLLE/DSPSymbols.cpp index 2cc412075e..261f77dd3d 100644 --- a/Source/Core/Core/HW/DSPLLE/DSPSymbols.cpp +++ b/Source/Core/Core/HW/DSPLLE/DSPSymbols.cpp @@ -78,141 +78,6 @@ Symbol* DSPSymbolDB::GetSymbolFromAddr(u32 addr) return nullptr; } -bool ReadAnnotatedAssembly(const std::string& filename) -{ - File::IOFile f(filename, "r"); - if (!f) - return false; - - char line[512]; - - int last_addr = 0; - - lines.reserve(3000); - - // Symbol generation - int brace_count = 0; - bool symbol_in_progress = false; - - int symbol_count = 0; - Symbol current_symbol; - - while (fgets(line, 512, f.GetHandle())) - { - // Scan string for the first 4-digit hex string. - size_t len = strlen(line); - int first_hex = -1; - bool hex_found = false; - for (unsigned int i = 0; i < strlen(line); i++) - { - const char c = line[i]; - if (isxdigit(c)) - { - if (first_hex == -1) - { - first_hex = i; - } - else - { - // Remove hex notation - if ((int)i == first_hex + 3 && (first_hex == 0 || line[first_hex - 1] != 'x') && - (i >= len - 1 || line[i + 1] == ' ')) - { - hex_found = true; - break; - } - } - } - else - { - if (i - first_hex < 3) - { - first_hex = -1; - } - if (isalpha(c)) - break; - } - } - - // Scan for function starts - if (!memcmp(line, "void", 4)) - { - char temp[256]; - for (size_t i = 6; i < len; i++) - { - if (line[i] == '(') - { - // Yep, got one. - memcpy(temp, line + 5, i - 5); - temp[i - 5] = 0; - - // Mark symbol so the next hex sets the address - current_symbol.Rename(temp); - current_symbol.address = 0xFFFF; - current_symbol.index = symbol_count++; - symbol_in_progress = true; - - // Reset brace count. - brace_count = 0; - } - } - } - - // Scan for braces - for (size_t i = 0; i < len; i++) - { - if (line[i] == '{') - brace_count++; - if (line[i] == '}') - { - brace_count--; - if (brace_count == 0 && symbol_in_progress) - { - // Commit this symbol. - current_symbol.size = last_addr - current_symbol.address + 1; - g_dsp_symbol_db.AddCompleteSymbol(current_symbol); - current_symbol.address = 0xFFFF; - symbol_in_progress = false; - } - } - } - - if (hex_found) - { - int hex = 0; - sscanf(line + first_hex, "%04x", &hex); - - // Sanity check - if (hex > last_addr + 3 || hex < last_addr - 3) - { - static int errors = 0; - INFO_LOG(DSPLLE, "Got Insane Hex Digit %04x (%04x) from %s", hex, last_addr, line); - errors++; - if (errors > 10) - { - return false; - } - } - else - { - // if (line_counter >= 200 && line_counter <= 220) - // NOTICE_LOG(DSPLLE, "Got Hex Digit %04x from %s, line %i", hex, line, line_counter); - if (symbol_in_progress && current_symbol.address == 0xFFFF) - current_symbol.address = hex; - - line_to_addr[line_counter] = hex; - addr_to_line[hex] = line_counter; - last_addr = hex; - } - } - - lines.push_back(TabsToSpaces(4, line)); - line_counter++; - } - - return true; -} - void AutoDisassembly(u16 start_addr, u16 end_addr) { AssemblerSettings settings; diff --git a/Source/Core/Core/HW/DSPLLE/DSPSymbols.h b/Source/Core/Core/HW/DSPLLE/DSPSymbols.h index ed9dc4840f..047d3c46ca 100644 --- a/Source/Core/Core/HW/DSPLLE/DSPSymbols.h +++ b/Source/Core/Core/HW/DSPLLE/DSPSymbols.h @@ -23,7 +23,6 @@ public: extern DSPSymbolDB g_dsp_symbol_db; -bool ReadAnnotatedAssembly(const std::string& filename); void AutoDisassembly(u16 start_addr, u16 end_addr); void Clear();