ObjectFile: Add support for mach-o-style dSYM companion files.
authorBenjamin Kramer <benny.kra@googlemail.com>
Wed, 14 Sep 2011 00:39:22 +0000 (00:39 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Wed, 14 Sep 2011 00:39:22 +0000 (00:39 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139676 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/PathV1.h
lib/Object/ObjectFile.cpp
lib/Support/Path.cpp

index 024bb39cedc22a19ebbcbe4a1f698c51b9c691c0..45165ded619cdfb182c36ca60cb31913d1ec77f2 100644 (file)
@@ -733,6 +733,7 @@ namespace sys {
     Mach_O_DynamicLinker_FileType,     ///< The Mach-O dynamic linker
     Mach_O_Bundle_FileType,            ///< Mach-O Bundle file
     Mach_O_DynamicallyLinkedSharedLibStub_FileType, ///< Mach-O Shared lib stub
+    Mach_O_DSYMCompanion_FileType,     ///< Mach-O dSYM companion file
     COFF_FileType                      ///< COFF object file or lib
   };
 
index a7798df33fe582447068ed048b350591870c18a8..69d8ed0e5e9af62742d8b1fcb8b844320a519333 100644 (file)
@@ -45,6 +45,7 @@ ObjectFile *ObjectFile::createObjectFile(MemoryBuffer *Object) {
     case sys::Mach_O_DynamicLinker_FileType:
     case sys::Mach_O_Bundle_FileType:
     case sys::Mach_O_DynamicallyLinkedSharedLibStub_FileType:
+    case sys::Mach_O_DSYMCompanion_FileType:
       return createMachOObjectFile(Object);
     case sys::COFF_FileType:
       return createCOFFObjectFile(Object);
index 8fbaf2d42bf9f39c2c5994ff40f903e24cb0c78a..e5b7cd3bfbc233f78ddccbbf7f586b9a50fd81d2 100644 (file)
@@ -121,7 +121,7 @@ sys::IdentifyFileType(const char *magic, unsigned length) {
         case 7: return Mach_O_DynamicLinker_FileType;
         case 8: return Mach_O_Bundle_FileType;
         case 9: return Mach_O_DynamicallyLinkedSharedLibStub_FileType;
-        case 10: break; // FIXME: MH_DSYM companion file with only debug.
+        case 10: return Mach_O_DSYMCompanion_FileType;
       }
       break;
     }