<div class="gmail_quote">On Fri, Aug 5, 2011 at 10:40 PM, Chandler Carruth <span dir="ltr"><<a href="mailto:chandlerc@gmail.com">chandlerc@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 class="im"><div class="gmail_quote">On Mon, Aug 1, 2011 at 3:40 PM, Evan Cheng <span dir="ltr"><<a href="mailto:evan.cheng@apple.com" target="_blank">evan.cheng@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am not comfortable with a few weeks. Is it not possible to just move TargetRegistry.cpp back to Support?</blockquote></div><br></div><div>Putting this into Support violates a lot of layering principles. I care a lot about layering and other invariants, thats how we keep building and using LLVM effectively.</div>
<div><br></div><div>Anyways, I understand the need for an expedient solution. I think I have a reasonable compromise -- we could move the registry into MC. The only targets that don't actually need MC are the CBackend and the CppBackend. That seems likely to be the ongoing trend. It would allow MC clients to not pull in any part of Target.</div>
<div><br></div><div>Best of all, that's where the other two pieces of the registry already live: the Reloc and CodeModel classes.</div><div><br></div><div>I'm trying this out now to ensure it actually works, and does in fact shrink llvm-mc back down to size.</div>
</blockquote></div><br><div>I've attached the patch. It looks like it will work. The disassembler (as well as many other libraries) no longer depends on Target from my testing. This look OK to commit?</div><div><br></div>
<div>I was thinking if it cleans up stuff we could rename this the 'MachineRegistry'... but not sure it really matters.</div>