<rdar://problem/12238339>
authorGreg Clayton <gclayton@apple.com>
Fri, 16 Nov 2012 21:36:10 +0000 (21:36 +0000)
committerGreg Clayton <gclayton@apple.com>
Fri, 16 Nov 2012 21:36:10 +0000 (21:36 +0000)
Make sure architectures are obeyed for skinny mach files.

llvm-svn: 168205

lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

index 92afb42..3e6cd1e 100644 (file)
@@ -562,6 +562,11 @@ ObjectFileMachO::ParseHeader ()
 
             ArchSpec mach_arch(eArchTypeMachO, m_header.cputype, m_header.cpusubtype);
             
+            // Check if the module has a required architecture
+            const ArchSpec &module_arch = module_sp->GetArchitecture();
+            if (module_arch.IsValid() && !module_arch.IsExactMatch(mach_arch))
+                return false;
+
             if (SetModulesArchitecture (mach_arch))
             {
                 const size_t header_and_lc_size = m_header.sizeofcmds + MachHeaderSizeFromMagic(m_header.magic);