Simplify ObjectFile::GetArchitecture

Summary:
instead of returning the architecture through by-ref argument and a
boolean value indicating success, we can just return the ArchSpec
directly. Since the ArchSpec already has an invalid state, it can be
used to denote the failure without the additional bool.

Reviewers: clayborg, zturner, espindola

Subscribers: emaste, arichardson, JDevlieghere, lldb-commits

Differential Revision: https://reviews.llvm.org/D56129

llvm-svn: 350291
This commit is contained in:
Pavel Labath
2019-01-03 10:37:19 +00:00
parent 4d752a88e8
commit f760f5aef4
25 changed files with 83 additions and 109 deletions

View File

@@ -309,7 +309,7 @@ ObjectFile *Module::GetMemoryObjectFile(const lldb::ProcessSP &process_sp,
// Once we get the object file, update our module with the object
// file's architecture since it might differ in vendor/os if some
// parts were unknown.
m_objfile_sp->GetArchitecture(m_arch);
m_arch = m_objfile_sp->GetArchitecture();
} else {
error.SetErrorString("unable to find suitable object file plug-in");
}
@@ -1265,9 +1265,7 @@ ObjectFile *Module::GetObjectFile() {
// parts were unknown. But since the matching arch might already be
// more specific than the generic COFF architecture, only merge in
// those values that overwrite unspecified unknown values.
ArchSpec new_arch;
m_objfile_sp->GetArchitecture(new_arch);
m_arch.MergeFrom(new_arch);
m_arch.MergeFrom(m_objfile_sp->GetArchitecture());
} else {
ReportError("failed to load objfile for %s",
GetFileSpec().GetPath().c_str());