summaryrefslogtreecommitdiff
path: root/Source/Core/Common/SymbolDB.cpp
AgeCommit message (Collapse)Author
2026-05-07Core: Implement automatic symbol demanglingAmber Brault
2025-07-27PPCSymbolDB: Don't return non-const pointersJosJuice
For thread safety, we shouldn't return any pointers or references that can be used to mutate the state of the PPCSymbolDB. This should be the final part of making PPCSymbolDB thread safe unless I've missed something.
2025-07-27PPCSymbolDB: Add missing lockingJosJuice
9395238 added locking in some PPCSymbolDB functions that access member variables, but far from all. To ensure thread safety, this commit adds the missing locking.
2025-07-27PPCSymbolDB: Reduce lock contention in LoadMap/LoadMapOnBootJosJuice
By building the map in a local variable and then swapping it with the member variable, we avoid the need to hold a lock while building the map.
2025-06-25PPCSymbolDB: Move loading map on boot logic from boot.cpp into PPCSymbolDB, ↵TryTwo
as it will be needing a mutex. Cleanup loading code and reduce amount of signals. On boot. allow previously loaded map to be kept, if its filename matches. Useful for restarting a game with a large symbol map.
2025-06-19Debugger symbols: Add new symbol type: Notes.. Notes are for naming single ↵TryTwo
instructions, or small groups of instructions. Notes are separate from function symbols, and can be searched separately. Unlike functions, notes of different length can overlap each other. In the instruction window, a note will always display over the function symbol.
2021-12-10Treewide: Adjust order of includesPokechu22
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2020-10-23Common: Migrate logging to fmtLioncash
Continues the migration of our code over to the fmt logger.
2019-06-16Common/SymbolDB: Use std::string_view where applicableLioncash
These strings are only used for comparison against other strings, so a string view can be used here.
2019-05-01Call Host_NotifyMapLoaded when clearing g_symbolDBJosJuice
Otherwise DolphinQt will have a stale symbol list and you can get nullptr dereferences when trying to use it.
2018-05-27SymbolDB: Namespace code under the Common namespaceLioncash
Moves more common code into the Common namespace where it belongs.
2018-05-27SymbolDB: Default constructor and destructor within the cpp fileLioncash
Given this is a class with non-trivial data-members, it's preferable to default the constructor and destructor in the cpp file.
2018-05-27SymbolDB: Normalize variable namesLioncash
Normalizes variable naming so that it adheres to our coding style While we're at it do minor cleanup relating to modified lines
2017-08-16SymbolDB: Blank stripped symbol name fixedSepalani
2017-02-18SymbolDB: Simplify GetSymbolsFromHashLioncash
Given a std::map can't have duplicate keys, iterating over the map explicitly isn't necessary, and find() can just be used instead. Also, instead of manually calling push_back() for every entry to be added, the range constructor of std::vector can be used instead to add the whole range all at once.
2016-12-19SymbolDB: Use set to map hash with symbolsSepalani
2016-12-19SymbolDB: GetSymbolsFromHash addedSepalani
2016-12-19SymbolDB: GetSymbolsFromName addedSepalani
2016-09-26SymbolDB: Only match against the function nameLéo Lam
This changes GetSymbolFromName to not require the passed name to completely match with the symbol name. Instead, we now match against the stripped symbol name (i.e. only the function name). This fixes a regression introduced by #4160, which prevented HLE::PatchFunctions() from working properly.
2016-06-24Reformat all the things. Have fun with merge conflicts.Pierre Bourdon
2016-01-21Correct ampersands as wellmathieui
2016-01-21Common: asterisks go against the type namemathieui
not the variable name
2015-09-11Partially revert "General: Toss out PRI macro usage"Lioncash
2015-06-28Use emplace() instead of insert() where applicable for maps.Lioncash
2015-05-25Set copyright year to when a file was createdTillmann Karras
2015-05-25Update license headers to GPLv2+Tillmann Karras
2014-09-19Fix build failing when disabling precompiled headers.Rohit Nirmal
2014-09-08Include CommonTypes.h instead of Common.h.Rohit Nirmal
2014-03-14Kill off some usages of c_str.Lioncash
Also changes some function params, but this is ok. Some simplifications were also able to be made (ie. killing off strcmps with ==, etc).
2014-03-09clang-modernize -use-nullptrTillmann Karras
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09clang-modernize -loop-convertTillmann Karras
and some manual adjustments
2014-02-22Make Common/ mostly IWYU clean (and fix errors in rest of the project ↵Pierre Bourdon
detected by this change).
2014-02-18Convert all includes to relative paths.Lioncash
2013-12-31Remove unnecessary Src/ foldersJasper St. Pierre