[Lldb-commits] [lldb] r321856 - [ArchSpec] Don't consider Unknown MachO64 as invalid.
Davide Italiano via lldb-commits
lldb-commits at lists.llvm.org
Thu Jan 4 18:50:25 PST 2018
Author: davide
Date: Thu Jan 4 18:50:24 2018
New Revision: 321856
URL: http://llvm.org/viewvc/llvm-project?rev=321856&view=rev
Log:
[ArchSpec] Don't consider Unknown MachO64 as invalid.
Even without a proper arch we can access line tables, etc..
<rdar://problem/35778442>
Modified:
lldb/trunk/source/Utility/ArchSpec.cpp
Modified: lldb/trunk/source/Utility/ArchSpec.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Utility/ArchSpec.cpp?rev=321856&r1=321855&r2=321856&view=diff
==============================================================================
--- lldb/trunk/source/Utility/ArchSpec.cpp (original)
+++ lldb/trunk/source/Utility/ArchSpec.cpp Thu Jan 4 18:50:24 2018
@@ -890,7 +890,12 @@ void ArchSpec::MergeFrom(const ArchSpec
GetTriple().setOS(other.GetTriple().getOS());
if (GetTriple().getArch() == llvm::Triple::UnknownArch) {
GetTriple().setArch(other.GetTriple().getArch());
- UpdateCore();
+
+ // MachO unknown64 isn't really invalid as the debugger can
+ // still obtain information from the binary, e.g. line tables.
+ // As such, we don't update the core here.
+ if (other.GetCore() != eCore_uknownMach64)
+ UpdateCore();
}
if (GetTriple().getEnvironment() == llvm::Triple::UnknownEnvironment &&
!TripleVendorWasSpecified()) {
More information about the lldb-commits
mailing list