Determine how much bytes freelist should process the memory block with given index.
135 {
136 static constexpr int group_array[4] = { 16, 56, 56, 56 };
137
138
139 if (index < 16)
140 {
141 return 8 * (index + 1);
142 }
143
144
145 else if(index < 16 + 56)
146 {
147 return 16 * (index + 1 - group_array[0]) + 128;
148 }
149
150
151 else if (index < 16 + 56 + 56)
152 {
153 return 128 * (index + 1 - group_array[0] - group_array[1]) + 1024;
154 }
155
156
157 else if (index < 16 + 56 + 56 + 56)
158 {
159 return 1024 * (index + 1 - group_array[0] - group_array[1] - group_array[2]) + 8 * 1024;
160 }
161
162
163 else if (index < 16 + 56 + 56 + 56 + 24)
164 {
165 return 8 * 1024 * (index + 1 - group_array[0] - group_array[1] - group_array[2] - group_array[3]) + 64 * 1024;
166 }
167
168 else
169 {
170 SPICES_CORE_ERROR("Access invalid free_lits index")
171 return 8 * 1024;
172 }
173 }