From: Mark Freeman Date: Wed, 21 May 2025 19:13:45 +0000 (-0400) Subject: internal/pkgbits: mark element / section ends as delta encoding candidates X-Git-Tag: go1.25rc1~114 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=b6e251b264869fac4ddc158fb9a5c8d5b4ac086f;p=gostls13.git internal/pkgbits: mark element / section ends as delta encoding candidates Change-Id: I165c98a0a5800515bfa33c60b95b534900d0ea59 Reviewed-on: https://go-review.googlesource.com/c/go/+/675215 LUCI-TryBot-Result: Go LUCI Auto-Submit: Mark Freeman Reviewed-by: Robert Griesemer --- diff --git a/src/internal/pkgbits/encoder.go b/src/internal/pkgbits/encoder.go index 2ecac1c788..6e3716570f 100644 --- a/src/internal/pkgbits/encoder.go +++ b/src/internal/pkgbits/encoder.go @@ -72,14 +72,17 @@ func (pw *PkgEncoder) DumpTo(out0 io.Writer) (fingerprint [8]byte) { writeUint32(flags) } - // Write elemEndsEnds. + // TODO(markfreeman): Also can use delta encoding to write section ends, + // but not as impactful. var sum uint32 for _, elems := range &pw.elems { sum += uint32(len(elems)) writeUint32(sum) } - // Write elemEnds. + // TODO(markfreeman): Use delta encoding to store element ends and inflate + // back to this representation during decoding; the numbers will be much + // smaller. sum = 0 for _, elems := range &pw.elems { for _, elem := range elems {