Hi, On Mon, 8 Aug 2011, Diego Novillo wrote:
> With these patches I'd like to: > > 1 Create independent facilities to stream trees, gimple and other > data structures independently of LTO. This first patch creates > the files data-streamer*.[ch], tree-streamer*.[ch] and > gimple-streamer*.[ch]. There are no other changes yet. This simply > moves functions out of lto-streamer*[ch], but no functions or data > structures have been renamed. This comes in a separate patch. > > 2 Make the naming scheme consistent. We use a mix of names to mean > the same thing (_out_, _output_, _write_, etc). We have lto_ > prefixes for functions that are actually generic. And we still have > references to dwarf names (uleb, sleb, etc). > > 3 Abstract the LTO data structures. The buffering and > descriptor data structures used for LTO are somewhat confusing. The > generic streaming routines should simply work on bytecode buffers > that are independent of LTO, PPH or other streamers we may want to > create in the future. > > 4 Reduce the number of callbacks. Ideally, I'd like to eliminate them > completely. The API we need to use from PPH is more settled now, so > it should be easier to decide what needs a callback and what can be > exposed. > > Richard, Michael, Jan, how does this plan sound? Sound. ;) Looking forward to some bikeshedding about naming in (2) and overabstraction in (3) :) Ciao, Michael.