[LLVMdev] [lld] LLD's software architecture

Rui Ueyama ruiu at google.com
Thu Apr 17 16:38:51 PDT 2014


These upward dependencies are I think a kind of bug that needs to be fixed.
If you can remove them I'd love to see that.


On Thu, Apr 17, 2014 at 11:52 AM, Michael Spencer <bigcheesegs at gmail.com>wrote:

> On Thu, Apr 17, 2014 at 5:51 AM, Bas van den Berg
> <b.van.den.berg.nl at gmail.com> wrote:
> > Hi,
> >
> > I'm analysing the LLD code structure (aka architecture) and am
> > trying to mold it into a component model.
> > Currently I see 4 components:
> > - Driver
> > - ReaderWriter
> > - Passes
> > - Core
> >
> > I wonder if this is the order that they're supposed to be in,
> > since there are also code dependencies upwards from:
> >   Core -> ReaderWriter
> >   Passes -> ReaderWriter
> >   ReaderWriter -> Driver
> >
> > For a graphical view check:
> > http://c2lang.org/docs/lld_architecture_96e1b5e02.png
> >
> > I think that with a few surgical patches, the dependency tree
> > can be completely free of circular deps.
> >
> > Bas
>
> You're interpretation seems right to me. I would love to get this
> cleaned up. A lot of this seems to be caused by the round trip passes,
> which I am currently moving up into reader writer (they are no longer
> passes). I'm not sure how to fix the LinkingContext dependencies
> though.
>
> - Michael Spencer
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140417/3dc5909e/attachment.html>


More information about the llvm-dev mailing list