ilya-biryukov added a comment.

Yeah, that sounds promising. Various source locations inside the same nodes are 
probably very close. Probably even across nodes.
If we are willing to take on a bit more complexity, we could probably get even 
bigger wins by storing all source locations in a single array  having indices 
into that array in the actual positions where we need the source locations. 
That way we can have:

- get the benefits of delta-encoding in the source locations array, probably 
even across nodes,
- probably still get quite good encoding for indices inside this array inside 
the actual AST nodes. Will definitely get those if we delta-encode the indices 
inside the same node.

I suspect there are requirements that will force us to store the array in 
chunks and allow searching for a particular chunk.

However, that's really adding quite a bit of complexity and I'm not sure 
preamble sizes are such a big deal outside our environment. E.g. even 10% 
savings are borderline for that kind of complexity.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D124422/new/

https://reviews.llvm.org/D124422

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to