[Lldb-commits] [lldb] r166057 - /lldb/trunk/source/Core/Module.cpp
Jason Molenda
jmolenda at apple.com
Tue Oct 16 13:45:49 PDT 2012
Author: jmolenda
Date: Tue Oct 16 15:45:49 2012
New Revision: 166057
URL: http://llvm.org/viewvc/llvm-project?rev=166057&view=rev
Log:
llvm needs the OS to be set to either iOS or Mac OS X
to work properly; when doing bare-boards rom debugging
force the OS to be one of those when initializing llvm.
<rdar://problem/12504138>
Modified:
lldb/trunk/source/Core/Module.cpp
Modified: lldb/trunk/source/Core/Module.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Module.cpp?rev=166057&r1=166056&r2=166057&view=diff
==============================================================================
--- lldb/trunk/source/Core/Module.cpp (original)
+++ lldb/trunk/source/Core/Module.cpp Tue Oct 16 15:45:49 2012
@@ -314,6 +314,22 @@
if (objfile && objfile->GetArchitecture(object_arch))
{
m_did_init_ast = true;
+
+ // LLVM wants this to be set to iOS or MacOSX; if we're working on
+ // a bare-boards type image, change the triple for llvm's benefit.
+ if (object_arch.GetTriple().getVendor() == llvm::Triple::Apple
+ && object_arch.GetTriple().getOS() == llvm::Triple::UnknownOS)
+ {
+ if (object_arch.GetTriple().getArch() == llvm::Triple::arm ||
+ object_arch.GetTriple().getArch() == llvm::Triple::thumb)
+ {
+ object_arch.GetTriple().setOS(llvm::Triple::IOS);
+ }
+ else
+ {
+ object_arch.GetTriple().setOS(llvm::Triple::MacOSX);
+ }
+ }
m_ast.SetArchitecture (object_arch);
}
}
More information about the lldb-commits
mailing list