This is an archive of the discontinued LLVM Phabricator instance.

getStreamedBitcodeModule: take StreamingMemoryObject instead of DataStreamer
Needs ReviewPublic

Authored by jvoung on Apr 14 2014, 4:17 PM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

Currently, getStreamedBitcodeModule takes a DataStreamer and then
creates a StreamingMemoryObject from that DataStreamer for the BitcodeReader.
That allows flexibility in the supplied DataStreamer implementation but does
not allow flexibility in the StreamingMemoryObject implementation.

For example, the StreamingMemoryObject might want the flexibilty of caching bytes
in a thread-local way.

Make StreamingMemoryObject the interface instead so that both DataStreamer
and StreamingMemoryObject implementations can be customized.

Diff Detail

Event Timeline