<div dir="ltr">Hi all,<div><br></div><div>BitstreamReader is the only in-tree client of the DataStreamer and MemoryObject interfaces. In practice when using user-facing LLVM tools, the bitcode will normally either be in memory or in a file, so the best way to access it is through memory, either directly or memory mapped.</div><div><br></div><div>As part of some refactorings I am making to BitstreamReader, I would like to simplify it by changing it to use a memory buffer directly and then removing the DataStreamer and MemoryObject interfaces.</div><div><br></div><div>My understanding that the only significant user of that interface as designed (for network streaming) is PNaCl, however it looks like removing this interface would not impose a significant burden on that project; they are already maintaining a couple of forks of BitstreamReader [1] so it would appear that the only change necessary on their side would be to also fork the interfaces.</div><div><br></div><div>If you are aware of any other significant users, please speak up!</div><div><br></div><div>Thanks,<br>-- <br><div class="gmail-m_-5372179860632505484gmail_signature"><div dir="ltr">-- <div>Peter</div><div><br></div><div>[1] <a href="https://chromium.googlesource.com/native_client/pnacl-llvm/+/master/include/llvm/Bitcode/NaCl/NaClBitstreamReader.h" target="_blank">https://chromium.<wbr>googlesource.com/native_<wbr>client/pnacl-llvm/+/master/<wbr>include/llvm/Bitcode/NaCl/<wbr>NaClBitstreamReader.h</a> <a href="https://chromium.googlesource.com/native_client/pnacl-subzero/+/master/pnacl-llvm/include/llvm/Bitcode/NaCl/NaClBitstreamReader.h">https://chromium.googlesource.com/native_client/pnacl-subzero/+/master/pnacl-llvm/include/llvm/Bitcode/NaCl/NaClBitstreamReader.h</a></div></div></div>
</div></div>