summaryrefslogtreecommitdiff
path: root/ewah/bitmap.c
diff options
context:
space:
mode:
authorLibravatar Derrick Stolee <dstolee@microsoft.com>2020-12-08 17:04:03 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2020-12-08 14:48:16 -0800
commit6dc5ef759f25fbded11d235362c59f59498809e6 (patch)
treebc613bec149e086e16c4c952885fab1d9edc0913 /ewah/bitmap.c
parentpack-bitmap-write: pass ownership of intermediate bitmaps (diff)
downloadtgif-6dc5ef759f25fbded11d235362c59f59498809e6.tar.xz
pack-bitmap-write: fill bitmap with commit history
The current implementation of bitmap_writer_build() creates a reachability bitmap for every walked commit. After computing a bitmap for a commit, those bits are pushed to an in-progress bitmap for its children. fill_bitmap_commit() assumes the bits corresponding to objects reachable from the parents of a commit are already set. This means that when visiting a new commit, we only have to walk the objects reachable between it and any of its parents. A future change to bitmap_writer_build() will relax this condition so not all parents have their bits set. Prepare for that by having 'fill_bitmap_commit()' walk parents until reaching commits whose bits are already set. Then, walk the trees for these commits as well. This has no functional change with the current implementation of bitmap_writer_build(). Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'ewah/bitmap.c')
0 files changed, 0 insertions, 0 deletions