<div dir="ltr"><div class="gmail_extra">I agree to move these files to Core. Any objections?</div><div class="gmail_extra"><div class="gmail_quote"><br></div><div class="gmail_quote">On Mon, Jun 2, 2014 at 12:44 AM, Bas van den Berg <span dir="ltr"><<a href="mailto:b.van.den.berg.nl@gmail.com" target="_blank">b.van.den.berg.nl@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div>The inverted dependency of Core to ReaderWriter via Simple.h was already present.<br>

</div>My idea was to fix the problem before it gets bigger.<br></div>My proposal would be to move Simple.h and Alias.h to Core. Similar to<br>
</div>UndefinedAtom.h etc.<br></div>It would be even nicer to make the naming consistent as well, since there already is<br></div>UndefinedAtom.h<br></div>SharedLibaryAtom.h<br>etc<br><br></div>Maybe:<br>SimpleAtom.h<br>

</div>
AliasAtom.h<br><br></div>Moving the file to core fixes the dependencies.<br><br><br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jun 2, 2014 at 9:25 AM, Rui Ueyama <span dir="ltr"><<a href="mailto:ruiu@google.com" target="_blank">ruiu@google.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>On Mon, Jun 2, 2014 at 12:01 AM, Bas van den Berg <span dir="ltr"><<a href="mailto:b.van.den.berg.nl@gmail.com" target="_blank">b.van.den.berg.nl@gmail.com</a>></span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div>Hi,<br><br></div>I've been following the changes in LLD's software architecture.<br>




</div>Recently a new file was added: Alias.h<br></div>In this file, the curret Atom set is extended with an AliasAtom.<br>
</div>While the change seems innocent enough, it has some nasty<br>potential. Simple.h and Alias.h are placed in the ReaderWriter<br>component. This is the 2nd component in the layering:<br></div>Driver<br>ReaderWriter<br>





</div>Passes<br>Core<br><br></div>The problem is that Core depends on these files. So in my opinion,<br>they belong to that Component. The greater impact here is that<br>once core starts depending on ReaderWriter, architecture Erosion<br>





will happen. This would obviously not be a good thing, since the<br>current design is fresh and clean.<br></div></div></blockquote><div><br></div></div><div>Core's dependency to Simple.h was there before the addition of Alias.h, so it's not new. And I don't feel like it's that bad as you might be feeling. Do you have any suggestion to get rid of it? Just moving the file to Core?</div>




<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="ltr"><div></div><div>I would love to supply patches, but am having issues getting<br>
lld to build under Ubuntu 12.04. (but that's another story ;) ).<br>


<br></div><div>I've posted the updated architecture view here:<br><a href="http://www.c2lang.org/docs/lld_architecture_20140602.png" target="_blank">http://www.c2lang.org/docs/lld_architecture_20140602.png</a><br><br>




</div></div>
<br></div>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div></div>