Make sure we ONLY add a `-load' switch to the JIT command line if the file is
verified as having an ELF header. This fixes PR151.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10195 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp
index f520ad0..67db704 100644
--- a/tools/gccld/gccld.cpp
+++ b/tools/gccld/gccld.cpp
@@ -285,6 +285,7 @@
       // gcc accepts -l<lib> and implicitly searches /lib and /usr/lib.
       LibPaths.push_back("/lib");
       LibPaths.push_back("/usr/lib");
+      LibPaths.push_back("/usr/X11R6/lib/");
       // We don't need to link in libc! In fact, /usr/lib/libc.so may not be a
       // shared object at all! See RH 8: plain text.
       std::vector<std::string>::iterator libc = 
@@ -295,7 +296,7 @@
       for (std::vector<std::string>::iterator i = Libraries.begin(), 
              e = Libraries.end(); i != e; ++i) {
         std::string FullLibraryPath = FindLib(*i, LibPaths, true);
-        if (!FullLibraryPath.empty())
+        if (!FullLibraryPath.empty() && IsSharedObject(FullLibraryPath))
           Out2 << "    -load=" << FullLibraryPath << " \\\n";
       }
       Out2 << "    $0.bc $*\n";