MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / getLine

Method getLine

pcsx2/DebugTools/DisassemblyManager.cpp:236–266  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

234}
235
236void DisassemblyManager::getLine(u32 address, bool insertSymbols, DisassemblyLineInfo& dest)
237{
238 auto it = findDisassemblyEntry(entries,address,false);
239 if (it == entries.end())
240 {
241 analyze(address);
242 it = findDisassemblyEntry(entries,address,false);
243
244 if (it == entries.end())
245 {
246 if (address % 4)
247 dest.totalSize = ((address+3) & ~3)-address;
248 else
249 dest.totalSize = 4;
250 dest.name = "ERROR";
251 dest.params = "Disassembly failure";
252 return;
253 }
254 }
255
256 DisassemblyEntry* entry = it->second;
257 if (entry->disassemble(address,dest,insertSymbols))
258 return;
259
260 if (address % 4)
261 dest.totalSize = ((address+3) & ~3)-address;
262 else
263 dest.totalSize = 4;
264 dest.name = "ERROR";
265 dest.params = "Disassembly failure";
266}
267
268u32 DisassemblyManager::getStartAddress(u32 address)
269{

Callers 5

contextFollowBranchMethod · 0.80
GetLineDisasmMethod · 0.80
FetchSelectionInfoMethod · 0.80

Calls 3

findDisassemblyEntryFunction · 0.85
disassembleMethod · 0.80
endMethod · 0.45

Tested by

no test coverage detected