[LLVMdev] [lld] LLD's software architecture (update)

Bas van den Berg b.van.den.berg.nl at gmail.com
Mon Jun 2 00:01:46 PDT 2014


Hi,

I've been following the changes in LLD's software architecture.
Recently a new file was added: Alias.h
In this file, the curret Atom set is extended with an AliasAtom.
While the change seems innocent enough, it has some nasty
potential. Simple.h and Alias.h are placed in the ReaderWriter
component. This is the 2nd component in the layering:
Driver
ReaderWriter
Passes
Core

The problem is that Core depends on these files. So in my opinion,
they belong to that Component. The greater impact here is that
once core starts depending on ReaderWriter, architecture Erosion
will happen. This would obviously not be a good thing, since the
current design is fresh and clean.

I would love to supply patches, but am having issues getting
lld to build under Ubuntu 12.04. (but that's another story ;) ).

I've posted the updated architecture view here:
http://www.c2lang.org/docs/lld_architecture_20140602.png
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140602/eaa5b5af/attachment.html>


More information about the llvm-dev mailing list