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

Shankar Kalpathi Easwaran shankarke at gmail.com
Fri Oct 4 15:53:56 PDT 2013


  Yes the MachO Driver would need to buffer them and create a group node at the end. I am planning to add a replace, erase function as part of the InputGraph so that things can move around.


================
Comment at: include/lld/Core/LinkingContext.h:314
@@ +313,3 @@
+  /// atoms.
+  virtual void setResolverState(int32_t resolverState) const;
+
----------------
kledzik at apple.com wrote:
> 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.
> 
I want to keep the method as is, as its convenient to add new types of atoms that are found.

The reason I thought it might be useful, was 

a) Depending on if weak atoms were found in the process, and if the linker flag dictated to resolve weak atoms within the group.
b) To derive stats of how many atoms were added/resolved from the inputelement (the weight function)

================
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;
----------------
kledzik at apple.com wrote:
> This should write the error message to 'diagnostics' parameter.
Sure will change that.


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



More information about the llvm-commits mailing list