[PATCH] [lld][inputGraph] Implement flavor specific resolver

kledzik at apple.com kledzik at apple.com
Fri Oct 4 15:43:25 PDT 2013


  How will the mach-o driver make one group at the end which contains all archives and dylibs? insertOneElementAt() can add a group to the current end, but if any other .o files are seen, the end will move.  So will the Driver will need to buffer all libraries seen on the command line and after everything else is done, it creates a group node and adds those libraries to the group?


================
Comment at: lib/Driver/Driver.cpp:56
@@ -77,1 +55,3 @@
+        FileNode *fileNode = (llvm::dyn_cast<FileNode>)(ie.get());
+        llvm::outs() << fileNode->errStr(ec) << "\n";
         fail = true;
----------------
This should write the error message to 'diagnostics' parameter.

================
Comment at: include/lld/Core/LinkingContext.h:314
@@ +313,3 @@
+  /// atoms.
+  virtual void setResolverState(int32_t resolverState) const;
+
----------------
You can eliminate the ResolveState enum and all the bit values by just making this method be:
  void setResolverState(bool addedDefines, bool addedUndefs, bool addedShared, bool addedAbsolute);
though I am not sure why anything needs to now what kind of atoms was added.



http://llvm-reviews.chandlerc.com/D1830



More information about the llvm-commits mailing list