// Returns HUGE_VAL if there's no legal mapping.
double FindOptimalCost(uint32_t *cum_freqs, int num_syms, int available_slots, const double *log2cache, CacheMap *cache)
{
- static int k = 0;
if (num_syms == 0) {
// Encoding zero symbols needs zero bits.
return 0.0;
freq = cache[cache_key].chosen_freq;
}
cum_freqs[mapping[symbol_idx]] = freq;
- assert(available_slots >= freq);
+ assert(available_slots >= 0 && unsigned(available_slots) >= freq);
available_slots -= freq;
}