Revert r196639 while I investigate a bot failure.

llvm-svn: 196641
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
index 800a75e..161135a4 100644
--- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
+++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
@@ -82,24 +82,12 @@
   return new ObjectImageCommon(InputBuffer);
 }
 
-ObjectImage *RuntimeDyldImpl::createObjectImageFromFile(ObjectFile *InputObject) {
-  return new ObjectImageCommon(InputObject);
-}
-
-ObjectImage *RuntimeDyldImpl::loadObject(ObjectFile *InputObject) {
-  return loadObject(createObjectImageFromFile(InputObject));
-}
-
 ObjectImage *RuntimeDyldImpl::loadObject(ObjectBuffer *InputBuffer) {
-  return loadObject(createObjectImage(InputBuffer));
-} 
-
-ObjectImage *RuntimeDyldImpl::loadObject(ObjectImage *InputObject) {
   MutexGuard locked(lock);
 
-  OwningPtr<ObjectImage> obj(InputObject);
+  OwningPtr<ObjectImage> obj(createObjectImage(InputBuffer));
   if (!obj)
-    return NULL;
+    report_fatal_error("Unable to create object image from memory buffer!");
 
   // Save information about our target
   Arch = (Triple::ArchType)obj->getArch();
@@ -151,7 +139,7 @@
         if (si == obj->end_sections()) continue;
         Check(si->getContents(SectionData));
         Check(si->isText(IsCode));
-        const uint8_t* SymPtr = (const uint8_t*)InputObject->getData().data() +
+        const uint8_t* SymPtr = (const uint8_t*)InputBuffer->getBufferStart() +
                                 (uintptr_t)FileOffset;
         uintptr_t SectOffset = (uintptr_t)(SymPtr -
                                            (const uint8_t*)SectionData.begin());
@@ -575,22 +563,6 @@
   delete Dyld;
 }
 
-ObjectImage *RuntimeDyld::loadObject(ObjectFile *InputObject) {
-  if (!Dyld) {
-    if (InputObject->isELF())
-      Dyld = new RuntimeDyldELF(MM);
-    else if (InputObject->isMachO())
-      Dyld = new RuntimeDyldMachO(MM);
-    else
-      report_fatal_error("Incompatible object format!");
-  } else {
-    if (!Dyld->isCompatibleFile(InputObject))
-      report_fatal_error("Incompatible object format!");
-  }
-
-  return Dyld->loadObject(InputObject);
-}
-
 ObjectImage *RuntimeDyld::loadObject(ObjectBuffer *InputBuffer) {
   if (!Dyld) {
     sys::fs::file_magic Type =