[LLVMdev] [RFC] Somewhat unrelated code in lib/MC

Eli Bendersky eliben at google.com
Sun Jun 29 13:40:48 PDT 2014


On Sat, Jun 28, 2014 at 10:25 PM, Rafael EspĂ­ndola <
rafael.espindola at gmail.com> wrote:

> Now with a compressed patch. Sorry for the duplication.
>
> Working on another patch I noticed quiet a bit of code in lib/MC that
> uses MC types, but is not used by MC itself or by any MC clients other
> than llvm-objdump.
>
> As an experiment to see how big this was, I created a MC2 library
> (patch attached).  The results are interesting. In a Release+Asserts
> shared build I get
>
> 811464 lib/libLLVMMC.so
> 272296 lib/libLLVMMCParser.so
> 152744 lib/libLLVMMC2.so
> 61248  lib/libLLVMMCJIT.so
> 22008  lib/libLLVMMCDisassembler.so
>
> Note how the new library is the third largest.
>
> Now, what is this code? From the the commit messages it looks like it
> is for "fancy" disassembly with CFG reconstruction. Is it
> complementary to the existing MCDisassembler library? Should the code
> be moved there instead? Should we have a MCDisassemblerCFG library?
>
> Splitting this library would also make it trivial to remove the MC ->
> Object dependency.
>

Splitting it off (at least into MCDisassembler) sounds like a good idea,
Rafael.

[I wonder if this will help making a custom-built llc that doesn't do
disassembly smaller]

Eli
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140629/0655e535/attachment.html>


More information about the llvm-dev mailing list