• Home
  • Raw
  • Download

Lines Matching full:refs

94 static void ClearBackwardRefs(VP8LBackwardRefs* const refs) {  in ClearBackwardRefs()  argument
95 assert(refs != NULL); in ClearBackwardRefs()
96 if (refs->tail_ != NULL) { in ClearBackwardRefs()
97 *refs->tail_ = refs->free_blocks_; // recycle all blocks at once in ClearBackwardRefs()
99 refs->free_blocks_ = refs->refs_; in ClearBackwardRefs()
100 refs->tail_ = &refs->refs_; in ClearBackwardRefs()
101 refs->last_block_ = NULL; in ClearBackwardRefs()
102 refs->refs_ = NULL; in ClearBackwardRefs()
105 void VP8LBackwardRefsClear(VP8LBackwardRefs* const refs) { in VP8LBackwardRefsClear() argument
106 assert(refs != NULL); in VP8LBackwardRefsClear()
107 ClearBackwardRefs(refs); in VP8LBackwardRefsClear()
108 while (refs->free_blocks_ != NULL) { in VP8LBackwardRefsClear()
109 PixOrCopyBlock* const next = refs->free_blocks_->next_; in VP8LBackwardRefsClear()
110 WebPSafeFree(refs->free_blocks_); in VP8LBackwardRefsClear()
111 refs->free_blocks_ = next; in VP8LBackwardRefsClear()
115 void VP8LBackwardRefsInit(VP8LBackwardRefs* const refs, int block_size) { in VP8LBackwardRefsInit() argument
116 assert(refs != NULL); in VP8LBackwardRefsInit()
117 memset(refs, 0, sizeof(*refs)); in VP8LBackwardRefsInit()
118 refs->tail_ = &refs->refs_; in VP8LBackwardRefsInit()
119 refs->block_size_ = in VP8LBackwardRefsInit()
123 VP8LRefsCursor VP8LRefsCursorInit(const VP8LBackwardRefs* const refs) { in VP8LRefsCursorInit() argument
125 c.cur_block_ = refs->refs_; in VP8LRefsCursorInit()
126 if (refs->refs_ != NULL) { in VP8LRefsCursorInit()
144 static PixOrCopyBlock* BackwardRefsNewBlock(VP8LBackwardRefs* const refs) { in BackwardRefsNewBlock() argument
145 PixOrCopyBlock* b = refs->free_blocks_; in BackwardRefsNewBlock()
148 sizeof(*b) + refs->block_size_ * sizeof(*b->start_); in BackwardRefsNewBlock()
151 refs->error_ |= 1; in BackwardRefsNewBlock()
156 refs->free_blocks_ = b->next_; in BackwardRefsNewBlock()
158 *refs->tail_ = b; in BackwardRefsNewBlock()
159 refs->tail_ = &b->next_; in BackwardRefsNewBlock()
160 refs->last_block_ = b; in BackwardRefsNewBlock()
166 static WEBP_INLINE void BackwardRefsCursorAdd(VP8LBackwardRefs* const refs, in BackwardRefsCursorAdd() argument
168 PixOrCopyBlock* b = refs->last_block_; in BackwardRefsCursorAdd()
169 if (b == NULL || b->size_ == refs->block_size_) { in BackwardRefsCursorAdd()
170 b = BackwardRefsNewBlock(refs); in BackwardRefsCursorAdd()
171 if (b == NULL) return; // refs->error_ is set in BackwardRefsCursorAdd()
434 VP8LBackwardRefs* const refs) { in AddSingleLiteral() argument
447 BackwardRefsCursorAdd(refs, v); in AddSingleLiteral()
452 int cache_bits, VP8LBackwardRefs* const refs) { in BackwardReferencesRle() argument
461 ClearBackwardRefs(refs); in BackwardReferencesRle()
463 AddSingleLiteral(argb[0], use_color_cache, &hashers, refs); in BackwardReferencesRle()
471 BackwardRefsCursorAdd(refs, PixOrCopyCreateCopy(1, rle_len)); in BackwardReferencesRle()
477 BackwardRefsCursorAdd(refs, PixOrCopyCreateCopy(xsize, prev_row_len)); in BackwardReferencesRle()
485 AddSingleLiteral(argb[i], use_color_cache, &hashers, refs); in BackwardReferencesRle()
490 return !refs->error_; in BackwardReferencesRle()
496 VP8LBackwardRefs* const refs) { in BackwardReferencesLz77() argument
509 ClearBackwardRefs(refs); in BackwardReferencesLz77()
543 AddSingleLiteral(argb[i], use_color_cache, &hashers, refs); in BackwardReferencesLz77()
545 BackwardRefsCursorAdd(refs, PixOrCopyCreateCopy(offset, len)); in BackwardReferencesLz77()
553 ok = !refs->error_; in BackwardReferencesLz77()
572 VP8LBackwardRefs* const refs);
596 VP8LBackwardRefs* const refs) { in CostModelBuild() argument
601 VP8LHistogramCreate(histo, refs, cache_bits); in CostModelBuild()
1244 VP8LBackwardRefs* const refs, uint16_t* const dist_array) { in BackwardReferencesHashChainDistanceOnly() argument
1270 if (!CostModelBuild(cost_model, cache_bits, refs)) { in BackwardReferencesHashChainDistanceOnly()
1407 ok = !refs->error_; in BackwardReferencesHashChainDistanceOnly()
1438 const VP8LHashChain* const hash_chain, VP8LBackwardRefs* const refs) { in BackwardReferencesHashChainFollowChosenPath() argument
1451 ClearBackwardRefs(refs); in BackwardReferencesHashChainFollowChosenPath()
1457 BackwardRefsCursorAdd(refs, PixOrCopyCreateCopy(offset, len)); in BackwardReferencesHashChainFollowChosenPath()
1476 BackwardRefsCursorAdd(refs, v); in BackwardReferencesHashChainFollowChosenPath()
1480 ok = !refs->error_; in BackwardReferencesHashChainFollowChosenPath()
1490 VP8LBackwardRefs* const refs) { in BackwardReferencesTraceBackwards() argument
1502 refs, dist_array)) { in BackwardReferencesTraceBackwards()
1507 argb, cache_bits, chosen_path, chosen_path_size, hash_chain, refs)) { in BackwardReferencesTraceBackwards()
1517 const VP8LBackwardRefs* const refs) { in BackwardReferences2DLocality() argument
1518 VP8LRefsCursor c = VP8LRefsCursorInit(refs); in BackwardReferences2DLocality()
1533 const VP8LBackwardRefs* const refs, in ComputeCacheEntropies() argument
1537 VP8LRefsCursor c = VP8LRefsCursorInit(refs); in ComputeCacheEntropies()
1557 c = VP8LRefsCursorInit(refs); in ComputeCacheEntropies()
1622 VP8LBackwardRefs* const refs, in CalculateBestCacheSize() argument
1640 if (!BackwardReferencesLz77(xsize, ysize, argb, 0, hash_chain, refs)) { in CalculateBestCacheSize()
1646 if (!ComputeCacheEntropies(argb, refs, cache_bits_high, entropies)) { in CalculateBestCacheSize()
1661 VP8LBackwardRefs* const refs) { in BackwardRefsWithLocalCache() argument
1664 VP8LRefsCursor c = VP8LRefsCursorInit(refs); in BackwardRefsWithLocalCache()
1680 // refs was created without local cache, so it can not have cache indexes. in BackwardRefsWithLocalCache()