From 15d1ae3a8abf93e18a524e26ffe87459c0511d16 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Tue, 2 May 2023 16:04:45 -0400 Subject: [PATCH] SymbolDB: Add constructors to Symbol Allows for much more convenient in-place construction. --- Source/Core/Common/SymbolDB.h | 3 +++ Source/Core/Core/PowerPC/PPCSymbolDB.cpp | 9 +++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/Core/Common/SymbolDB.h b/Source/Core/Common/SymbolDB.h index c7efa0212a..e3882637cb 100644 --- a/Source/Core/Common/SymbolDB.h +++ b/Source/Core/Common/SymbolDB.h @@ -37,6 +37,9 @@ struct Symbol Data, }; + Symbol() = default; + explicit Symbol(const std::string& name) { Rename(name); } + void Rename(const std::string& symbol_name); std::string name; diff --git a/Source/Core/Core/PowerPC/PPCSymbolDB.cpp b/Source/Core/Core/PowerPC/PPCSymbolDB.cpp index a231701cf1..7b96c29fad 100644 --- a/Source/Core/Core/PowerPC/PPCSymbolDB.cpp +++ b/Source/Core/Core/PowerPC/PPCSymbolDB.cpp @@ -67,12 +67,9 @@ void PPCSymbolDB::AddKnownSymbol(const Core::CPUThreadGuard& guard, u32 startAdd else { // new symbol. run analyze. - Common::Symbol tf; - tf.Rename(name); - tf.type = type; - tf.address = startAddr; - - auto& new_symbol = m_functions.emplace(startAddr, std::move(tf)).first->second; + auto& new_symbol = m_functions.emplace(startAddr, name).first->second; + new_symbol.type = type; + new_symbol.address = startAddr; if (new_symbol.type == Common::Symbol::Type::Function) {