[LLVMdev] [lld] Modeling ELF FileNodes/ControlNodes (Group's) in lld

Nick Kledzik kledzik at apple.com
Thu Sep 5 12:06:51 PDT 2013


On Sep 5, 2013, at 11:58 AM, Shankar Easwaran <shankare at codeaurora.org> wrote:

> On 9/5/2013 1:40 PM, Nick Kledzik wrote:
>> The way darwin works with the current scheme is that the files are added to InputFiles in command line order, then forEachInitialAtom() walks the whole list but only operates on the non-library (i.e. object files) and searchLibraries() only operates on library files.
>> 
>> If we have the Resolver walk the graph, then either:
>> 1) We need some option for darwin and gnu to work differently, or
>> 2) Have the darwin driver construct the graph with all libraries in one group at the end.  As long as that is straight forward to do, it seems simpler and also captures the darwin difference that all libraries are always repeatedly searched.
>> 
>> -Nick
> One way, I can think of this being done is to get all the libraries that are specified in the command line and create a group node, and add it after the command line is processed to the inputGraph.
That sounds simple enough.

> 
> PS : Does Darwin have a command line option to handle files in the order specified in the command line for libraries ? If so, then the above would break
No.

-Nick



More information about the llvm-dev mailing list