[LLVMdev] [PATCH / PROPOSAL] bitcode encoding that is ~15% smaller for large bitcode files...

Chris Lattner clattner at apple.com
Sun Sep 30 09:09:07 PDT 2012


On Sep 25, 2012, at 5:08 PM, Jan Voung <jvoung at chromium.org> wrote:

> Hi all,
> 
> I've been looking into how to make llvm bitcode files smaller.  There is one simple change that appears to shrink linked bitcode files by about 15%.  See this spreadsheet for some rough data:
> 
> https://docs.google.com/spreadsheet/ccc?key=0AjRrJHQc4_bddEtJdjdIek5fMDdIdFFIZldZXzdWa0E
> 
> 
> The change is in how operand ids are encoded in bitcode files.  Rather than use an "absolute number" given by the ValueEnumerator, which counts up within a function, we can have the id be relative to the current instruction.

Very cool.  This is the "obviously right" way to do it, I'm glad you've implemented it.  It looks like Duncan gave you a lot of feedback already, I'm looking forward to seeing the updated patch.  Thanks for tackling this Jan!

-Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120930/67bce9ee/attachment.html>


More information about the llvm-dev mailing list