Lines Matching refs:gaps
291 // Adds largest aligned gaps to queue of gaps.
292 static void AddFieldGap(uint32_t gap_start, uint32_t gap_end, FieldGaps* gaps) {
293 DCHECK(gaps != nullptr);
299 gaps->push(FieldGap {current_offset, sizeof(uint32_t)});
302 gaps->push(FieldGap {current_offset, sizeof(uint16_t)});
305 gaps->push(FieldGap {current_offset, sizeof(uint8_t)});
311 // Shuffle fields forward, making use of gaps whenever possible.
316 FieldGaps* gaps)
320 DCHECK(gaps != nullptr);
333 AddFieldGap(old_offset.Uint32Value(), field_offset->Uint32Value(), gaps);
337 if (!gaps->empty() && gaps->top().size >= n) {
338 FieldGap gap = gaps->top();
339 gaps->pop();
343 AddFieldGap(gap.start_offset + n, gap.start_offset + gap.size, gaps);
7655 // Once the fields are sorted in this order we will attempt to fill any gaps that might be present
7669 FieldGaps gaps;
7682 AddFieldGap(old_offset.Uint32Value(), field_offset.Uint32Value(), &gaps);
7693 ShuffleForward<8>(¤t_field, &field_offset, &grouped_and_sorted_fields, &gaps);
7694 ShuffleForward<4>(¤t_field, &field_offset, &grouped_and_sorted_fields, &gaps);
7695 ShuffleForward<2>(¤t_field, &field_offset, &grouped_and_sorted_fields, &gaps);
7696 ShuffleForward<1>(¤t_field, &field_offset, &grouped_and_sorted_fields, &gaps);