1/* This file was automatically generated by size_classes.sh. */ 2/******************************************************************************/ 3#ifdef JEMALLOC_H_TYPES 4 5/* 6 * This header requires LG_SIZEOF_PTR, LG_TINY_MIN, LG_QUANTUM, and LG_PAGE to 7 * be defined prior to inclusion, and it in turn defines: 8 * 9 * LG_SIZE_CLASS_GROUP: Lg of size class count for each size doubling. 10 * SIZE_CLASSES: Complete table of 11 * SC(index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup) 12 * tuples. 13 * index: Size class index. 14 * lg_grp: Lg group base size (no deltas added). 15 * lg_delta: Lg delta to previous size class. 16 * ndelta: Delta multiplier. size == 1<<lg_grp + ndelta<<lg_delta 17 * bin: 'yes' if a small bin size class, 'no' otherwise. 18 * lg_delta_lookup: Same as lg_delta if a lookup table size class, 'no' 19 * otherwise. 20 * NTBINS: Number of tiny bins. 21 * NLBINS: Number of bins supported by the lookup table. 22 * NBINS: Number of small size class bins. 23 * NSIZES: Number of size classes. 24 * LG_TINY_MAXCLASS: Lg of maximum tiny size class. 25 * LOOKUP_MAXCLASS: Maximum size class included in lookup table. 26 * SMALL_MAXCLASS: Maximum small size class. 27 * LG_LARGE_MINCLASS: Lg of minimum large size class. 28 * HUGE_MAXCLASS: Maximum (huge) size class. 29 */ 30 31#define LG_SIZE_CLASS_GROUP 2 32 33#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 12) 34#define SIZE_CLASSES \ 35 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 36 SC( 0, 3, 3, 0, yes, 3) \ 37 SC( 1, 3, 3, 1, yes, 3) \ 38 SC( 2, 3, 3, 2, yes, 3) \ 39 SC( 3, 3, 3, 3, yes, 3) \ 40 \ 41 SC( 4, 5, 3, 1, yes, 3) \ 42 SC( 5, 5, 3, 2, yes, 3) \ 43 SC( 6, 5, 3, 3, yes, 3) \ 44 SC( 7, 5, 3, 4, yes, 3) \ 45 \ 46 SC( 8, 6, 4, 1, yes, 4) \ 47 SC( 9, 6, 4, 2, yes, 4) \ 48 SC( 10, 6, 4, 3, yes, 4) \ 49 SC( 11, 6, 4, 4, yes, 4) \ 50 \ 51 SC( 12, 7, 5, 1, yes, 5) \ 52 SC( 13, 7, 5, 2, yes, 5) \ 53 SC( 14, 7, 5, 3, yes, 5) \ 54 SC( 15, 7, 5, 4, yes, 5) \ 55 \ 56 SC( 16, 8, 6, 1, yes, 6) \ 57 SC( 17, 8, 6, 2, yes, 6) \ 58 SC( 18, 8, 6, 3, yes, 6) \ 59 SC( 19, 8, 6, 4, yes, 6) \ 60 \ 61 SC( 20, 9, 7, 1, yes, 7) \ 62 SC( 21, 9, 7, 2, yes, 7) \ 63 SC( 22, 9, 7, 3, yes, 7) \ 64 SC( 23, 9, 7, 4, yes, 7) \ 65 \ 66 SC( 24, 10, 8, 1, yes, 8) \ 67 SC( 25, 10, 8, 2, yes, 8) \ 68 SC( 26, 10, 8, 3, yes, 8) \ 69 SC( 27, 10, 8, 4, yes, 8) \ 70 \ 71 SC( 28, 11, 9, 1, yes, 9) \ 72 SC( 29, 11, 9, 2, yes, 9) \ 73 SC( 30, 11, 9, 3, yes, 9) \ 74 SC( 31, 11, 9, 4, yes, 9) \ 75 \ 76 SC( 32, 12, 10, 1, yes, no) \ 77 SC( 33, 12, 10, 2, yes, no) \ 78 SC( 34, 12, 10, 3, yes, no) \ 79 SC( 35, 12, 10, 4, yes, no) \ 80 \ 81 SC( 36, 13, 11, 1, yes, no) \ 82 SC( 37, 13, 11, 2, yes, no) \ 83 SC( 38, 13, 11, 3, yes, no) \ 84 SC( 39, 13, 11, 4, no, no) \ 85 \ 86 SC( 40, 14, 12, 1, no, no) \ 87 SC( 41, 14, 12, 2, no, no) \ 88 SC( 42, 14, 12, 3, no, no) \ 89 SC( 43, 14, 12, 4, no, no) \ 90 \ 91 SC( 44, 15, 13, 1, no, no) \ 92 SC( 45, 15, 13, 2, no, no) \ 93 SC( 46, 15, 13, 3, no, no) \ 94 SC( 47, 15, 13, 4, no, no) \ 95 \ 96 SC( 48, 16, 14, 1, no, no) \ 97 SC( 49, 16, 14, 2, no, no) \ 98 SC( 50, 16, 14, 3, no, no) \ 99 SC( 51, 16, 14, 4, no, no) \ 100 \ 101 SC( 52, 17, 15, 1, no, no) \ 102 SC( 53, 17, 15, 2, no, no) \ 103 SC( 54, 17, 15, 3, no, no) \ 104 SC( 55, 17, 15, 4, no, no) \ 105 \ 106 SC( 56, 18, 16, 1, no, no) \ 107 SC( 57, 18, 16, 2, no, no) \ 108 SC( 58, 18, 16, 3, no, no) \ 109 SC( 59, 18, 16, 4, no, no) \ 110 \ 111 SC( 60, 19, 17, 1, no, no) \ 112 SC( 61, 19, 17, 2, no, no) \ 113 SC( 62, 19, 17, 3, no, no) \ 114 SC( 63, 19, 17, 4, no, no) \ 115 \ 116 SC( 64, 20, 18, 1, no, no) \ 117 SC( 65, 20, 18, 2, no, no) \ 118 SC( 66, 20, 18, 3, no, no) \ 119 SC( 67, 20, 18, 4, no, no) \ 120 \ 121 SC( 68, 21, 19, 1, no, no) \ 122 SC( 69, 21, 19, 2, no, no) \ 123 SC( 70, 21, 19, 3, no, no) \ 124 SC( 71, 21, 19, 4, no, no) \ 125 \ 126 SC( 72, 22, 20, 1, no, no) \ 127 SC( 73, 22, 20, 2, no, no) \ 128 SC( 74, 22, 20, 3, no, no) \ 129 SC( 75, 22, 20, 4, no, no) \ 130 \ 131 SC( 76, 23, 21, 1, no, no) \ 132 SC( 77, 23, 21, 2, no, no) \ 133 SC( 78, 23, 21, 3, no, no) \ 134 SC( 79, 23, 21, 4, no, no) \ 135 \ 136 SC( 80, 24, 22, 1, no, no) \ 137 SC( 81, 24, 22, 2, no, no) \ 138 SC( 82, 24, 22, 3, no, no) \ 139 SC( 83, 24, 22, 4, no, no) \ 140 \ 141 SC( 84, 25, 23, 1, no, no) \ 142 SC( 85, 25, 23, 2, no, no) \ 143 SC( 86, 25, 23, 3, no, no) \ 144 SC( 87, 25, 23, 4, no, no) \ 145 \ 146 SC( 88, 26, 24, 1, no, no) \ 147 SC( 89, 26, 24, 2, no, no) \ 148 SC( 90, 26, 24, 3, no, no) \ 149 SC( 91, 26, 24, 4, no, no) \ 150 \ 151 SC( 92, 27, 25, 1, no, no) \ 152 SC( 93, 27, 25, 2, no, no) \ 153 SC( 94, 27, 25, 3, no, no) \ 154 SC( 95, 27, 25, 4, no, no) \ 155 \ 156 SC( 96, 28, 26, 1, no, no) \ 157 SC( 97, 28, 26, 2, no, no) \ 158 SC( 98, 28, 26, 3, no, no) \ 159 SC( 99, 28, 26, 4, no, no) \ 160 \ 161 SC(100, 29, 27, 1, no, no) \ 162 SC(101, 29, 27, 2, no, no) \ 163 SC(102, 29, 27, 3, no, no) \ 164 SC(103, 29, 27, 4, no, no) \ 165 \ 166 SC(104, 30, 28, 1, no, no) \ 167 SC(105, 30, 28, 2, no, no) \ 168 SC(106, 30, 28, 3, no, no) \ 169 170#define SIZE_CLASSES_DEFINED 171#define NTBINS 0 172#define NLBINS 32 173#define NBINS 39 174#define NSIZES 107 175#define LG_TINY_MAXCLASS "NA" 176#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 177#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 178#define LG_LARGE_MINCLASS 14 179#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 180#endif 181 182#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 13) 183#define SIZE_CLASSES \ 184 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 185 SC( 0, 3, 3, 0, yes, 3) \ 186 SC( 1, 3, 3, 1, yes, 3) \ 187 SC( 2, 3, 3, 2, yes, 3) \ 188 SC( 3, 3, 3, 3, yes, 3) \ 189 \ 190 SC( 4, 5, 3, 1, yes, 3) \ 191 SC( 5, 5, 3, 2, yes, 3) \ 192 SC( 6, 5, 3, 3, yes, 3) \ 193 SC( 7, 5, 3, 4, yes, 3) \ 194 \ 195 SC( 8, 6, 4, 1, yes, 4) \ 196 SC( 9, 6, 4, 2, yes, 4) \ 197 SC( 10, 6, 4, 3, yes, 4) \ 198 SC( 11, 6, 4, 4, yes, 4) \ 199 \ 200 SC( 12, 7, 5, 1, yes, 5) \ 201 SC( 13, 7, 5, 2, yes, 5) \ 202 SC( 14, 7, 5, 3, yes, 5) \ 203 SC( 15, 7, 5, 4, yes, 5) \ 204 \ 205 SC( 16, 8, 6, 1, yes, 6) \ 206 SC( 17, 8, 6, 2, yes, 6) \ 207 SC( 18, 8, 6, 3, yes, 6) \ 208 SC( 19, 8, 6, 4, yes, 6) \ 209 \ 210 SC( 20, 9, 7, 1, yes, 7) \ 211 SC( 21, 9, 7, 2, yes, 7) \ 212 SC( 22, 9, 7, 3, yes, 7) \ 213 SC( 23, 9, 7, 4, yes, 7) \ 214 \ 215 SC( 24, 10, 8, 1, yes, 8) \ 216 SC( 25, 10, 8, 2, yes, 8) \ 217 SC( 26, 10, 8, 3, yes, 8) \ 218 SC( 27, 10, 8, 4, yes, 8) \ 219 \ 220 SC( 28, 11, 9, 1, yes, 9) \ 221 SC( 29, 11, 9, 2, yes, 9) \ 222 SC( 30, 11, 9, 3, yes, 9) \ 223 SC( 31, 11, 9, 4, yes, 9) \ 224 \ 225 SC( 32, 12, 10, 1, yes, no) \ 226 SC( 33, 12, 10, 2, yes, no) \ 227 SC( 34, 12, 10, 3, yes, no) \ 228 SC( 35, 12, 10, 4, yes, no) \ 229 \ 230 SC( 36, 13, 11, 1, yes, no) \ 231 SC( 37, 13, 11, 2, yes, no) \ 232 SC( 38, 13, 11, 3, yes, no) \ 233 SC( 39, 13, 11, 4, yes, no) \ 234 \ 235 SC( 40, 14, 12, 1, yes, no) \ 236 SC( 41, 14, 12, 2, yes, no) \ 237 SC( 42, 14, 12, 3, yes, no) \ 238 SC( 43, 14, 12, 4, no, no) \ 239 \ 240 SC( 44, 15, 13, 1, no, no) \ 241 SC( 45, 15, 13, 2, no, no) \ 242 SC( 46, 15, 13, 3, no, no) \ 243 SC( 47, 15, 13, 4, no, no) \ 244 \ 245 SC( 48, 16, 14, 1, no, no) \ 246 SC( 49, 16, 14, 2, no, no) \ 247 SC( 50, 16, 14, 3, no, no) \ 248 SC( 51, 16, 14, 4, no, no) \ 249 \ 250 SC( 52, 17, 15, 1, no, no) \ 251 SC( 53, 17, 15, 2, no, no) \ 252 SC( 54, 17, 15, 3, no, no) \ 253 SC( 55, 17, 15, 4, no, no) \ 254 \ 255 SC( 56, 18, 16, 1, no, no) \ 256 SC( 57, 18, 16, 2, no, no) \ 257 SC( 58, 18, 16, 3, no, no) \ 258 SC( 59, 18, 16, 4, no, no) \ 259 \ 260 SC( 60, 19, 17, 1, no, no) \ 261 SC( 61, 19, 17, 2, no, no) \ 262 SC( 62, 19, 17, 3, no, no) \ 263 SC( 63, 19, 17, 4, no, no) \ 264 \ 265 SC( 64, 20, 18, 1, no, no) \ 266 SC( 65, 20, 18, 2, no, no) \ 267 SC( 66, 20, 18, 3, no, no) \ 268 SC( 67, 20, 18, 4, no, no) \ 269 \ 270 SC( 68, 21, 19, 1, no, no) \ 271 SC( 69, 21, 19, 2, no, no) \ 272 SC( 70, 21, 19, 3, no, no) \ 273 SC( 71, 21, 19, 4, no, no) \ 274 \ 275 SC( 72, 22, 20, 1, no, no) \ 276 SC( 73, 22, 20, 2, no, no) \ 277 SC( 74, 22, 20, 3, no, no) \ 278 SC( 75, 22, 20, 4, no, no) \ 279 \ 280 SC( 76, 23, 21, 1, no, no) \ 281 SC( 77, 23, 21, 2, no, no) \ 282 SC( 78, 23, 21, 3, no, no) \ 283 SC( 79, 23, 21, 4, no, no) \ 284 \ 285 SC( 80, 24, 22, 1, no, no) \ 286 SC( 81, 24, 22, 2, no, no) \ 287 SC( 82, 24, 22, 3, no, no) \ 288 SC( 83, 24, 22, 4, no, no) \ 289 \ 290 SC( 84, 25, 23, 1, no, no) \ 291 SC( 85, 25, 23, 2, no, no) \ 292 SC( 86, 25, 23, 3, no, no) \ 293 SC( 87, 25, 23, 4, no, no) \ 294 \ 295 SC( 88, 26, 24, 1, no, no) \ 296 SC( 89, 26, 24, 2, no, no) \ 297 SC( 90, 26, 24, 3, no, no) \ 298 SC( 91, 26, 24, 4, no, no) \ 299 \ 300 SC( 92, 27, 25, 1, no, no) \ 301 SC( 93, 27, 25, 2, no, no) \ 302 SC( 94, 27, 25, 3, no, no) \ 303 SC( 95, 27, 25, 4, no, no) \ 304 \ 305 SC( 96, 28, 26, 1, no, no) \ 306 SC( 97, 28, 26, 2, no, no) \ 307 SC( 98, 28, 26, 3, no, no) \ 308 SC( 99, 28, 26, 4, no, no) \ 309 \ 310 SC(100, 29, 27, 1, no, no) \ 311 SC(101, 29, 27, 2, no, no) \ 312 SC(102, 29, 27, 3, no, no) \ 313 SC(103, 29, 27, 4, no, no) \ 314 \ 315 SC(104, 30, 28, 1, no, no) \ 316 SC(105, 30, 28, 2, no, no) \ 317 SC(106, 30, 28, 3, no, no) \ 318 319#define SIZE_CLASSES_DEFINED 320#define NTBINS 0 321#define NLBINS 32 322#define NBINS 43 323#define NSIZES 107 324#define LG_TINY_MAXCLASS "NA" 325#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 326#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 327#define LG_LARGE_MINCLASS 15 328#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 329#endif 330 331#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 14) 332#define SIZE_CLASSES \ 333 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 334 SC( 0, 3, 3, 0, yes, 3) \ 335 SC( 1, 3, 3, 1, yes, 3) \ 336 SC( 2, 3, 3, 2, yes, 3) \ 337 SC( 3, 3, 3, 3, yes, 3) \ 338 \ 339 SC( 4, 5, 3, 1, yes, 3) \ 340 SC( 5, 5, 3, 2, yes, 3) \ 341 SC( 6, 5, 3, 3, yes, 3) \ 342 SC( 7, 5, 3, 4, yes, 3) \ 343 \ 344 SC( 8, 6, 4, 1, yes, 4) \ 345 SC( 9, 6, 4, 2, yes, 4) \ 346 SC( 10, 6, 4, 3, yes, 4) \ 347 SC( 11, 6, 4, 4, yes, 4) \ 348 \ 349 SC( 12, 7, 5, 1, yes, 5) \ 350 SC( 13, 7, 5, 2, yes, 5) \ 351 SC( 14, 7, 5, 3, yes, 5) \ 352 SC( 15, 7, 5, 4, yes, 5) \ 353 \ 354 SC( 16, 8, 6, 1, yes, 6) \ 355 SC( 17, 8, 6, 2, yes, 6) \ 356 SC( 18, 8, 6, 3, yes, 6) \ 357 SC( 19, 8, 6, 4, yes, 6) \ 358 \ 359 SC( 20, 9, 7, 1, yes, 7) \ 360 SC( 21, 9, 7, 2, yes, 7) \ 361 SC( 22, 9, 7, 3, yes, 7) \ 362 SC( 23, 9, 7, 4, yes, 7) \ 363 \ 364 SC( 24, 10, 8, 1, yes, 8) \ 365 SC( 25, 10, 8, 2, yes, 8) \ 366 SC( 26, 10, 8, 3, yes, 8) \ 367 SC( 27, 10, 8, 4, yes, 8) \ 368 \ 369 SC( 28, 11, 9, 1, yes, 9) \ 370 SC( 29, 11, 9, 2, yes, 9) \ 371 SC( 30, 11, 9, 3, yes, 9) \ 372 SC( 31, 11, 9, 4, yes, 9) \ 373 \ 374 SC( 32, 12, 10, 1, yes, no) \ 375 SC( 33, 12, 10, 2, yes, no) \ 376 SC( 34, 12, 10, 3, yes, no) \ 377 SC( 35, 12, 10, 4, yes, no) \ 378 \ 379 SC( 36, 13, 11, 1, yes, no) \ 380 SC( 37, 13, 11, 2, yes, no) \ 381 SC( 38, 13, 11, 3, yes, no) \ 382 SC( 39, 13, 11, 4, yes, no) \ 383 \ 384 SC( 40, 14, 12, 1, yes, no) \ 385 SC( 41, 14, 12, 2, yes, no) \ 386 SC( 42, 14, 12, 3, yes, no) \ 387 SC( 43, 14, 12, 4, yes, no) \ 388 \ 389 SC( 44, 15, 13, 1, yes, no) \ 390 SC( 45, 15, 13, 2, yes, no) \ 391 SC( 46, 15, 13, 3, yes, no) \ 392 SC( 47, 15, 13, 4, no, no) \ 393 \ 394 SC( 48, 16, 14, 1, no, no) \ 395 SC( 49, 16, 14, 2, no, no) \ 396 SC( 50, 16, 14, 3, no, no) \ 397 SC( 51, 16, 14, 4, no, no) \ 398 \ 399 SC( 52, 17, 15, 1, no, no) \ 400 SC( 53, 17, 15, 2, no, no) \ 401 SC( 54, 17, 15, 3, no, no) \ 402 SC( 55, 17, 15, 4, no, no) \ 403 \ 404 SC( 56, 18, 16, 1, no, no) \ 405 SC( 57, 18, 16, 2, no, no) \ 406 SC( 58, 18, 16, 3, no, no) \ 407 SC( 59, 18, 16, 4, no, no) \ 408 \ 409 SC( 60, 19, 17, 1, no, no) \ 410 SC( 61, 19, 17, 2, no, no) \ 411 SC( 62, 19, 17, 3, no, no) \ 412 SC( 63, 19, 17, 4, no, no) \ 413 \ 414 SC( 64, 20, 18, 1, no, no) \ 415 SC( 65, 20, 18, 2, no, no) \ 416 SC( 66, 20, 18, 3, no, no) \ 417 SC( 67, 20, 18, 4, no, no) \ 418 \ 419 SC( 68, 21, 19, 1, no, no) \ 420 SC( 69, 21, 19, 2, no, no) \ 421 SC( 70, 21, 19, 3, no, no) \ 422 SC( 71, 21, 19, 4, no, no) \ 423 \ 424 SC( 72, 22, 20, 1, no, no) \ 425 SC( 73, 22, 20, 2, no, no) \ 426 SC( 74, 22, 20, 3, no, no) \ 427 SC( 75, 22, 20, 4, no, no) \ 428 \ 429 SC( 76, 23, 21, 1, no, no) \ 430 SC( 77, 23, 21, 2, no, no) \ 431 SC( 78, 23, 21, 3, no, no) \ 432 SC( 79, 23, 21, 4, no, no) \ 433 \ 434 SC( 80, 24, 22, 1, no, no) \ 435 SC( 81, 24, 22, 2, no, no) \ 436 SC( 82, 24, 22, 3, no, no) \ 437 SC( 83, 24, 22, 4, no, no) \ 438 \ 439 SC( 84, 25, 23, 1, no, no) \ 440 SC( 85, 25, 23, 2, no, no) \ 441 SC( 86, 25, 23, 3, no, no) \ 442 SC( 87, 25, 23, 4, no, no) \ 443 \ 444 SC( 88, 26, 24, 1, no, no) \ 445 SC( 89, 26, 24, 2, no, no) \ 446 SC( 90, 26, 24, 3, no, no) \ 447 SC( 91, 26, 24, 4, no, no) \ 448 \ 449 SC( 92, 27, 25, 1, no, no) \ 450 SC( 93, 27, 25, 2, no, no) \ 451 SC( 94, 27, 25, 3, no, no) \ 452 SC( 95, 27, 25, 4, no, no) \ 453 \ 454 SC( 96, 28, 26, 1, no, no) \ 455 SC( 97, 28, 26, 2, no, no) \ 456 SC( 98, 28, 26, 3, no, no) \ 457 SC( 99, 28, 26, 4, no, no) \ 458 \ 459 SC(100, 29, 27, 1, no, no) \ 460 SC(101, 29, 27, 2, no, no) \ 461 SC(102, 29, 27, 3, no, no) \ 462 SC(103, 29, 27, 4, no, no) \ 463 \ 464 SC(104, 30, 28, 1, no, no) \ 465 SC(105, 30, 28, 2, no, no) \ 466 SC(106, 30, 28, 3, no, no) \ 467 468#define SIZE_CLASSES_DEFINED 469#define NTBINS 0 470#define NLBINS 32 471#define NBINS 47 472#define NSIZES 107 473#define LG_TINY_MAXCLASS "NA" 474#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 475#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 476#define LG_LARGE_MINCLASS 16 477#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 478#endif 479 480#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 16) 481#define SIZE_CLASSES \ 482 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 483 SC( 0, 3, 3, 0, yes, 3) \ 484 SC( 1, 3, 3, 1, yes, 3) \ 485 SC( 2, 3, 3, 2, yes, 3) \ 486 SC( 3, 3, 3, 3, yes, 3) \ 487 \ 488 SC( 4, 5, 3, 1, yes, 3) \ 489 SC( 5, 5, 3, 2, yes, 3) \ 490 SC( 6, 5, 3, 3, yes, 3) \ 491 SC( 7, 5, 3, 4, yes, 3) \ 492 \ 493 SC( 8, 6, 4, 1, yes, 4) \ 494 SC( 9, 6, 4, 2, yes, 4) \ 495 SC( 10, 6, 4, 3, yes, 4) \ 496 SC( 11, 6, 4, 4, yes, 4) \ 497 \ 498 SC( 12, 7, 5, 1, yes, 5) \ 499 SC( 13, 7, 5, 2, yes, 5) \ 500 SC( 14, 7, 5, 3, yes, 5) \ 501 SC( 15, 7, 5, 4, yes, 5) \ 502 \ 503 SC( 16, 8, 6, 1, yes, 6) \ 504 SC( 17, 8, 6, 2, yes, 6) \ 505 SC( 18, 8, 6, 3, yes, 6) \ 506 SC( 19, 8, 6, 4, yes, 6) \ 507 \ 508 SC( 20, 9, 7, 1, yes, 7) \ 509 SC( 21, 9, 7, 2, yes, 7) \ 510 SC( 22, 9, 7, 3, yes, 7) \ 511 SC( 23, 9, 7, 4, yes, 7) \ 512 \ 513 SC( 24, 10, 8, 1, yes, 8) \ 514 SC( 25, 10, 8, 2, yes, 8) \ 515 SC( 26, 10, 8, 3, yes, 8) \ 516 SC( 27, 10, 8, 4, yes, 8) \ 517 \ 518 SC( 28, 11, 9, 1, yes, 9) \ 519 SC( 29, 11, 9, 2, yes, 9) \ 520 SC( 30, 11, 9, 3, yes, 9) \ 521 SC( 31, 11, 9, 4, yes, 9) \ 522 \ 523 SC( 32, 12, 10, 1, yes, no) \ 524 SC( 33, 12, 10, 2, yes, no) \ 525 SC( 34, 12, 10, 3, yes, no) \ 526 SC( 35, 12, 10, 4, yes, no) \ 527 \ 528 SC( 36, 13, 11, 1, yes, no) \ 529 SC( 37, 13, 11, 2, yes, no) \ 530 SC( 38, 13, 11, 3, yes, no) \ 531 SC( 39, 13, 11, 4, yes, no) \ 532 \ 533 SC( 40, 14, 12, 1, yes, no) \ 534 SC( 41, 14, 12, 2, yes, no) \ 535 SC( 42, 14, 12, 3, yes, no) \ 536 SC( 43, 14, 12, 4, yes, no) \ 537 \ 538 SC( 44, 15, 13, 1, yes, no) \ 539 SC( 45, 15, 13, 2, yes, no) \ 540 SC( 46, 15, 13, 3, yes, no) \ 541 SC( 47, 15, 13, 4, yes, no) \ 542 \ 543 SC( 48, 16, 14, 1, yes, no) \ 544 SC( 49, 16, 14, 2, yes, no) \ 545 SC( 50, 16, 14, 3, yes, no) \ 546 SC( 51, 16, 14, 4, yes, no) \ 547 \ 548 SC( 52, 17, 15, 1, yes, no) \ 549 SC( 53, 17, 15, 2, yes, no) \ 550 SC( 54, 17, 15, 3, yes, no) \ 551 SC( 55, 17, 15, 4, no, no) \ 552 \ 553 SC( 56, 18, 16, 1, no, no) \ 554 SC( 57, 18, 16, 2, no, no) \ 555 SC( 58, 18, 16, 3, no, no) \ 556 SC( 59, 18, 16, 4, no, no) \ 557 \ 558 SC( 60, 19, 17, 1, no, no) \ 559 SC( 61, 19, 17, 2, no, no) \ 560 SC( 62, 19, 17, 3, no, no) \ 561 SC( 63, 19, 17, 4, no, no) \ 562 \ 563 SC( 64, 20, 18, 1, no, no) \ 564 SC( 65, 20, 18, 2, no, no) \ 565 SC( 66, 20, 18, 3, no, no) \ 566 SC( 67, 20, 18, 4, no, no) \ 567 \ 568 SC( 68, 21, 19, 1, no, no) \ 569 SC( 69, 21, 19, 2, no, no) \ 570 SC( 70, 21, 19, 3, no, no) \ 571 SC( 71, 21, 19, 4, no, no) \ 572 \ 573 SC( 72, 22, 20, 1, no, no) \ 574 SC( 73, 22, 20, 2, no, no) \ 575 SC( 74, 22, 20, 3, no, no) \ 576 SC( 75, 22, 20, 4, no, no) \ 577 \ 578 SC( 76, 23, 21, 1, no, no) \ 579 SC( 77, 23, 21, 2, no, no) \ 580 SC( 78, 23, 21, 3, no, no) \ 581 SC( 79, 23, 21, 4, no, no) \ 582 \ 583 SC( 80, 24, 22, 1, no, no) \ 584 SC( 81, 24, 22, 2, no, no) \ 585 SC( 82, 24, 22, 3, no, no) \ 586 SC( 83, 24, 22, 4, no, no) \ 587 \ 588 SC( 84, 25, 23, 1, no, no) \ 589 SC( 85, 25, 23, 2, no, no) \ 590 SC( 86, 25, 23, 3, no, no) \ 591 SC( 87, 25, 23, 4, no, no) \ 592 \ 593 SC( 88, 26, 24, 1, no, no) \ 594 SC( 89, 26, 24, 2, no, no) \ 595 SC( 90, 26, 24, 3, no, no) \ 596 SC( 91, 26, 24, 4, no, no) \ 597 \ 598 SC( 92, 27, 25, 1, no, no) \ 599 SC( 93, 27, 25, 2, no, no) \ 600 SC( 94, 27, 25, 3, no, no) \ 601 SC( 95, 27, 25, 4, no, no) \ 602 \ 603 SC( 96, 28, 26, 1, no, no) \ 604 SC( 97, 28, 26, 2, no, no) \ 605 SC( 98, 28, 26, 3, no, no) \ 606 SC( 99, 28, 26, 4, no, no) \ 607 \ 608 SC(100, 29, 27, 1, no, no) \ 609 SC(101, 29, 27, 2, no, no) \ 610 SC(102, 29, 27, 3, no, no) \ 611 SC(103, 29, 27, 4, no, no) \ 612 \ 613 SC(104, 30, 28, 1, no, no) \ 614 SC(105, 30, 28, 2, no, no) \ 615 SC(106, 30, 28, 3, no, no) \ 616 617#define SIZE_CLASSES_DEFINED 618#define NTBINS 0 619#define NLBINS 32 620#define NBINS 55 621#define NSIZES 107 622#define LG_TINY_MAXCLASS "NA" 623#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 624#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 625#define LG_LARGE_MINCLASS 18 626#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 627#endif 628 629#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 12) 630#define SIZE_CLASSES \ 631 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 632 SC( 0, 3, 3, 0, yes, 3) \ 633 \ 634 SC( 1, 3, 3, 1, yes, 3) \ 635 SC( 2, 4, 4, 1, yes, 4) \ 636 SC( 3, 4, 4, 2, yes, 4) \ 637 SC( 4, 4, 4, 3, yes, 4) \ 638 \ 639 SC( 5, 6, 4, 1, yes, 4) \ 640 SC( 6, 6, 4, 2, yes, 4) \ 641 SC( 7, 6, 4, 3, yes, 4) \ 642 SC( 8, 6, 4, 4, yes, 4) \ 643 \ 644 SC( 9, 7, 5, 1, yes, 5) \ 645 SC( 10, 7, 5, 2, yes, 5) \ 646 SC( 11, 7, 5, 3, yes, 5) \ 647 SC( 12, 7, 5, 4, yes, 5) \ 648 \ 649 SC( 13, 8, 6, 1, yes, 6) \ 650 SC( 14, 8, 6, 2, yes, 6) \ 651 SC( 15, 8, 6, 3, yes, 6) \ 652 SC( 16, 8, 6, 4, yes, 6) \ 653 \ 654 SC( 17, 9, 7, 1, yes, 7) \ 655 SC( 18, 9, 7, 2, yes, 7) \ 656 SC( 19, 9, 7, 3, yes, 7) \ 657 SC( 20, 9, 7, 4, yes, 7) \ 658 \ 659 SC( 21, 10, 8, 1, yes, 8) \ 660 SC( 22, 10, 8, 2, yes, 8) \ 661 SC( 23, 10, 8, 3, yes, 8) \ 662 SC( 24, 10, 8, 4, yes, 8) \ 663 \ 664 SC( 25, 11, 9, 1, yes, 9) \ 665 SC( 26, 11, 9, 2, yes, 9) \ 666 SC( 27, 11, 9, 3, yes, 9) \ 667 SC( 28, 11, 9, 4, yes, 9) \ 668 \ 669 SC( 29, 12, 10, 1, yes, no) \ 670 SC( 30, 12, 10, 2, yes, no) \ 671 SC( 31, 12, 10, 3, yes, no) \ 672 SC( 32, 12, 10, 4, yes, no) \ 673 \ 674 SC( 33, 13, 11, 1, yes, no) \ 675 SC( 34, 13, 11, 2, yes, no) \ 676 SC( 35, 13, 11, 3, yes, no) \ 677 SC( 36, 13, 11, 4, no, no) \ 678 \ 679 SC( 37, 14, 12, 1, no, no) \ 680 SC( 38, 14, 12, 2, no, no) \ 681 SC( 39, 14, 12, 3, no, no) \ 682 SC( 40, 14, 12, 4, no, no) \ 683 \ 684 SC( 41, 15, 13, 1, no, no) \ 685 SC( 42, 15, 13, 2, no, no) \ 686 SC( 43, 15, 13, 3, no, no) \ 687 SC( 44, 15, 13, 4, no, no) \ 688 \ 689 SC( 45, 16, 14, 1, no, no) \ 690 SC( 46, 16, 14, 2, no, no) \ 691 SC( 47, 16, 14, 3, no, no) \ 692 SC( 48, 16, 14, 4, no, no) \ 693 \ 694 SC( 49, 17, 15, 1, no, no) \ 695 SC( 50, 17, 15, 2, no, no) \ 696 SC( 51, 17, 15, 3, no, no) \ 697 SC( 52, 17, 15, 4, no, no) \ 698 \ 699 SC( 53, 18, 16, 1, no, no) \ 700 SC( 54, 18, 16, 2, no, no) \ 701 SC( 55, 18, 16, 3, no, no) \ 702 SC( 56, 18, 16, 4, no, no) \ 703 \ 704 SC( 57, 19, 17, 1, no, no) \ 705 SC( 58, 19, 17, 2, no, no) \ 706 SC( 59, 19, 17, 3, no, no) \ 707 SC( 60, 19, 17, 4, no, no) \ 708 \ 709 SC( 61, 20, 18, 1, no, no) \ 710 SC( 62, 20, 18, 2, no, no) \ 711 SC( 63, 20, 18, 3, no, no) \ 712 SC( 64, 20, 18, 4, no, no) \ 713 \ 714 SC( 65, 21, 19, 1, no, no) \ 715 SC( 66, 21, 19, 2, no, no) \ 716 SC( 67, 21, 19, 3, no, no) \ 717 SC( 68, 21, 19, 4, no, no) \ 718 \ 719 SC( 69, 22, 20, 1, no, no) \ 720 SC( 70, 22, 20, 2, no, no) \ 721 SC( 71, 22, 20, 3, no, no) \ 722 SC( 72, 22, 20, 4, no, no) \ 723 \ 724 SC( 73, 23, 21, 1, no, no) \ 725 SC( 74, 23, 21, 2, no, no) \ 726 SC( 75, 23, 21, 3, no, no) \ 727 SC( 76, 23, 21, 4, no, no) \ 728 \ 729 SC( 77, 24, 22, 1, no, no) \ 730 SC( 78, 24, 22, 2, no, no) \ 731 SC( 79, 24, 22, 3, no, no) \ 732 SC( 80, 24, 22, 4, no, no) \ 733 \ 734 SC( 81, 25, 23, 1, no, no) \ 735 SC( 82, 25, 23, 2, no, no) \ 736 SC( 83, 25, 23, 3, no, no) \ 737 SC( 84, 25, 23, 4, no, no) \ 738 \ 739 SC( 85, 26, 24, 1, no, no) \ 740 SC( 86, 26, 24, 2, no, no) \ 741 SC( 87, 26, 24, 3, no, no) \ 742 SC( 88, 26, 24, 4, no, no) \ 743 \ 744 SC( 89, 27, 25, 1, no, no) \ 745 SC( 90, 27, 25, 2, no, no) \ 746 SC( 91, 27, 25, 3, no, no) \ 747 SC( 92, 27, 25, 4, no, no) \ 748 \ 749 SC( 93, 28, 26, 1, no, no) \ 750 SC( 94, 28, 26, 2, no, no) \ 751 SC( 95, 28, 26, 3, no, no) \ 752 SC( 96, 28, 26, 4, no, no) \ 753 \ 754 SC( 97, 29, 27, 1, no, no) \ 755 SC( 98, 29, 27, 2, no, no) \ 756 SC( 99, 29, 27, 3, no, no) \ 757 SC(100, 29, 27, 4, no, no) \ 758 \ 759 SC(101, 30, 28, 1, no, no) \ 760 SC(102, 30, 28, 2, no, no) \ 761 SC(103, 30, 28, 3, no, no) \ 762 763#define SIZE_CLASSES_DEFINED 764#define NTBINS 1 765#define NLBINS 29 766#define NBINS 36 767#define NSIZES 104 768#define LG_TINY_MAXCLASS 3 769#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 770#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 771#define LG_LARGE_MINCLASS 14 772#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 773#endif 774 775#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 13) 776#define SIZE_CLASSES \ 777 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 778 SC( 0, 3, 3, 0, yes, 3) \ 779 \ 780 SC( 1, 3, 3, 1, yes, 3) \ 781 SC( 2, 4, 4, 1, yes, 4) \ 782 SC( 3, 4, 4, 2, yes, 4) \ 783 SC( 4, 4, 4, 3, yes, 4) \ 784 \ 785 SC( 5, 6, 4, 1, yes, 4) \ 786 SC( 6, 6, 4, 2, yes, 4) \ 787 SC( 7, 6, 4, 3, yes, 4) \ 788 SC( 8, 6, 4, 4, yes, 4) \ 789 \ 790 SC( 9, 7, 5, 1, yes, 5) \ 791 SC( 10, 7, 5, 2, yes, 5) \ 792 SC( 11, 7, 5, 3, yes, 5) \ 793 SC( 12, 7, 5, 4, yes, 5) \ 794 \ 795 SC( 13, 8, 6, 1, yes, 6) \ 796 SC( 14, 8, 6, 2, yes, 6) \ 797 SC( 15, 8, 6, 3, yes, 6) \ 798 SC( 16, 8, 6, 4, yes, 6) \ 799 \ 800 SC( 17, 9, 7, 1, yes, 7) \ 801 SC( 18, 9, 7, 2, yes, 7) \ 802 SC( 19, 9, 7, 3, yes, 7) \ 803 SC( 20, 9, 7, 4, yes, 7) \ 804 \ 805 SC( 21, 10, 8, 1, yes, 8) \ 806 SC( 22, 10, 8, 2, yes, 8) \ 807 SC( 23, 10, 8, 3, yes, 8) \ 808 SC( 24, 10, 8, 4, yes, 8) \ 809 \ 810 SC( 25, 11, 9, 1, yes, 9) \ 811 SC( 26, 11, 9, 2, yes, 9) \ 812 SC( 27, 11, 9, 3, yes, 9) \ 813 SC( 28, 11, 9, 4, yes, 9) \ 814 \ 815 SC( 29, 12, 10, 1, yes, no) \ 816 SC( 30, 12, 10, 2, yes, no) \ 817 SC( 31, 12, 10, 3, yes, no) \ 818 SC( 32, 12, 10, 4, yes, no) \ 819 \ 820 SC( 33, 13, 11, 1, yes, no) \ 821 SC( 34, 13, 11, 2, yes, no) \ 822 SC( 35, 13, 11, 3, yes, no) \ 823 SC( 36, 13, 11, 4, yes, no) \ 824 \ 825 SC( 37, 14, 12, 1, yes, no) \ 826 SC( 38, 14, 12, 2, yes, no) \ 827 SC( 39, 14, 12, 3, yes, no) \ 828 SC( 40, 14, 12, 4, no, no) \ 829 \ 830 SC( 41, 15, 13, 1, no, no) \ 831 SC( 42, 15, 13, 2, no, no) \ 832 SC( 43, 15, 13, 3, no, no) \ 833 SC( 44, 15, 13, 4, no, no) \ 834 \ 835 SC( 45, 16, 14, 1, no, no) \ 836 SC( 46, 16, 14, 2, no, no) \ 837 SC( 47, 16, 14, 3, no, no) \ 838 SC( 48, 16, 14, 4, no, no) \ 839 \ 840 SC( 49, 17, 15, 1, no, no) \ 841 SC( 50, 17, 15, 2, no, no) \ 842 SC( 51, 17, 15, 3, no, no) \ 843 SC( 52, 17, 15, 4, no, no) \ 844 \ 845 SC( 53, 18, 16, 1, no, no) \ 846 SC( 54, 18, 16, 2, no, no) \ 847 SC( 55, 18, 16, 3, no, no) \ 848 SC( 56, 18, 16, 4, no, no) \ 849 \ 850 SC( 57, 19, 17, 1, no, no) \ 851 SC( 58, 19, 17, 2, no, no) \ 852 SC( 59, 19, 17, 3, no, no) \ 853 SC( 60, 19, 17, 4, no, no) \ 854 \ 855 SC( 61, 20, 18, 1, no, no) \ 856 SC( 62, 20, 18, 2, no, no) \ 857 SC( 63, 20, 18, 3, no, no) \ 858 SC( 64, 20, 18, 4, no, no) \ 859 \ 860 SC( 65, 21, 19, 1, no, no) \ 861 SC( 66, 21, 19, 2, no, no) \ 862 SC( 67, 21, 19, 3, no, no) \ 863 SC( 68, 21, 19, 4, no, no) \ 864 \ 865 SC( 69, 22, 20, 1, no, no) \ 866 SC( 70, 22, 20, 2, no, no) \ 867 SC( 71, 22, 20, 3, no, no) \ 868 SC( 72, 22, 20, 4, no, no) \ 869 \ 870 SC( 73, 23, 21, 1, no, no) \ 871 SC( 74, 23, 21, 2, no, no) \ 872 SC( 75, 23, 21, 3, no, no) \ 873 SC( 76, 23, 21, 4, no, no) \ 874 \ 875 SC( 77, 24, 22, 1, no, no) \ 876 SC( 78, 24, 22, 2, no, no) \ 877 SC( 79, 24, 22, 3, no, no) \ 878 SC( 80, 24, 22, 4, no, no) \ 879 \ 880 SC( 81, 25, 23, 1, no, no) \ 881 SC( 82, 25, 23, 2, no, no) \ 882 SC( 83, 25, 23, 3, no, no) \ 883 SC( 84, 25, 23, 4, no, no) \ 884 \ 885 SC( 85, 26, 24, 1, no, no) \ 886 SC( 86, 26, 24, 2, no, no) \ 887 SC( 87, 26, 24, 3, no, no) \ 888 SC( 88, 26, 24, 4, no, no) \ 889 \ 890 SC( 89, 27, 25, 1, no, no) \ 891 SC( 90, 27, 25, 2, no, no) \ 892 SC( 91, 27, 25, 3, no, no) \ 893 SC( 92, 27, 25, 4, no, no) \ 894 \ 895 SC( 93, 28, 26, 1, no, no) \ 896 SC( 94, 28, 26, 2, no, no) \ 897 SC( 95, 28, 26, 3, no, no) \ 898 SC( 96, 28, 26, 4, no, no) \ 899 \ 900 SC( 97, 29, 27, 1, no, no) \ 901 SC( 98, 29, 27, 2, no, no) \ 902 SC( 99, 29, 27, 3, no, no) \ 903 SC(100, 29, 27, 4, no, no) \ 904 \ 905 SC(101, 30, 28, 1, no, no) \ 906 SC(102, 30, 28, 2, no, no) \ 907 SC(103, 30, 28, 3, no, no) \ 908 909#define SIZE_CLASSES_DEFINED 910#define NTBINS 1 911#define NLBINS 29 912#define NBINS 40 913#define NSIZES 104 914#define LG_TINY_MAXCLASS 3 915#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 916#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 917#define LG_LARGE_MINCLASS 15 918#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 919#endif 920 921#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 14) 922#define SIZE_CLASSES \ 923 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 924 SC( 0, 3, 3, 0, yes, 3) \ 925 \ 926 SC( 1, 3, 3, 1, yes, 3) \ 927 SC( 2, 4, 4, 1, yes, 4) \ 928 SC( 3, 4, 4, 2, yes, 4) \ 929 SC( 4, 4, 4, 3, yes, 4) \ 930 \ 931 SC( 5, 6, 4, 1, yes, 4) \ 932 SC( 6, 6, 4, 2, yes, 4) \ 933 SC( 7, 6, 4, 3, yes, 4) \ 934 SC( 8, 6, 4, 4, yes, 4) \ 935 \ 936 SC( 9, 7, 5, 1, yes, 5) \ 937 SC( 10, 7, 5, 2, yes, 5) \ 938 SC( 11, 7, 5, 3, yes, 5) \ 939 SC( 12, 7, 5, 4, yes, 5) \ 940 \ 941 SC( 13, 8, 6, 1, yes, 6) \ 942 SC( 14, 8, 6, 2, yes, 6) \ 943 SC( 15, 8, 6, 3, yes, 6) \ 944 SC( 16, 8, 6, 4, yes, 6) \ 945 \ 946 SC( 17, 9, 7, 1, yes, 7) \ 947 SC( 18, 9, 7, 2, yes, 7) \ 948 SC( 19, 9, 7, 3, yes, 7) \ 949 SC( 20, 9, 7, 4, yes, 7) \ 950 \ 951 SC( 21, 10, 8, 1, yes, 8) \ 952 SC( 22, 10, 8, 2, yes, 8) \ 953 SC( 23, 10, 8, 3, yes, 8) \ 954 SC( 24, 10, 8, 4, yes, 8) \ 955 \ 956 SC( 25, 11, 9, 1, yes, 9) \ 957 SC( 26, 11, 9, 2, yes, 9) \ 958 SC( 27, 11, 9, 3, yes, 9) \ 959 SC( 28, 11, 9, 4, yes, 9) \ 960 \ 961 SC( 29, 12, 10, 1, yes, no) \ 962 SC( 30, 12, 10, 2, yes, no) \ 963 SC( 31, 12, 10, 3, yes, no) \ 964 SC( 32, 12, 10, 4, yes, no) \ 965 \ 966 SC( 33, 13, 11, 1, yes, no) \ 967 SC( 34, 13, 11, 2, yes, no) \ 968 SC( 35, 13, 11, 3, yes, no) \ 969 SC( 36, 13, 11, 4, yes, no) \ 970 \ 971 SC( 37, 14, 12, 1, yes, no) \ 972 SC( 38, 14, 12, 2, yes, no) \ 973 SC( 39, 14, 12, 3, yes, no) \ 974 SC( 40, 14, 12, 4, yes, no) \ 975 \ 976 SC( 41, 15, 13, 1, yes, no) \ 977 SC( 42, 15, 13, 2, yes, no) \ 978 SC( 43, 15, 13, 3, yes, no) \ 979 SC( 44, 15, 13, 4, no, no) \ 980 \ 981 SC( 45, 16, 14, 1, no, no) \ 982 SC( 46, 16, 14, 2, no, no) \ 983 SC( 47, 16, 14, 3, no, no) \ 984 SC( 48, 16, 14, 4, no, no) \ 985 \ 986 SC( 49, 17, 15, 1, no, no) \ 987 SC( 50, 17, 15, 2, no, no) \ 988 SC( 51, 17, 15, 3, no, no) \ 989 SC( 52, 17, 15, 4, no, no) \ 990 \ 991 SC( 53, 18, 16, 1, no, no) \ 992 SC( 54, 18, 16, 2, no, no) \ 993 SC( 55, 18, 16, 3, no, no) \ 994 SC( 56, 18, 16, 4, no, no) \ 995 \ 996 SC( 57, 19, 17, 1, no, no) \ 997 SC( 58, 19, 17, 2, no, no) \ 998 SC( 59, 19, 17, 3, no, no) \ 999 SC( 60, 19, 17, 4, no, no) \ 1000 \ 1001 SC( 61, 20, 18, 1, no, no) \ 1002 SC( 62, 20, 18, 2, no, no) \ 1003 SC( 63, 20, 18, 3, no, no) \ 1004 SC( 64, 20, 18, 4, no, no) \ 1005 \ 1006 SC( 65, 21, 19, 1, no, no) \ 1007 SC( 66, 21, 19, 2, no, no) \ 1008 SC( 67, 21, 19, 3, no, no) \ 1009 SC( 68, 21, 19, 4, no, no) \ 1010 \ 1011 SC( 69, 22, 20, 1, no, no) \ 1012 SC( 70, 22, 20, 2, no, no) \ 1013 SC( 71, 22, 20, 3, no, no) \ 1014 SC( 72, 22, 20, 4, no, no) \ 1015 \ 1016 SC( 73, 23, 21, 1, no, no) \ 1017 SC( 74, 23, 21, 2, no, no) \ 1018 SC( 75, 23, 21, 3, no, no) \ 1019 SC( 76, 23, 21, 4, no, no) \ 1020 \ 1021 SC( 77, 24, 22, 1, no, no) \ 1022 SC( 78, 24, 22, 2, no, no) \ 1023 SC( 79, 24, 22, 3, no, no) \ 1024 SC( 80, 24, 22, 4, no, no) \ 1025 \ 1026 SC( 81, 25, 23, 1, no, no) \ 1027 SC( 82, 25, 23, 2, no, no) \ 1028 SC( 83, 25, 23, 3, no, no) \ 1029 SC( 84, 25, 23, 4, no, no) \ 1030 \ 1031 SC( 85, 26, 24, 1, no, no) \ 1032 SC( 86, 26, 24, 2, no, no) \ 1033 SC( 87, 26, 24, 3, no, no) \ 1034 SC( 88, 26, 24, 4, no, no) \ 1035 \ 1036 SC( 89, 27, 25, 1, no, no) \ 1037 SC( 90, 27, 25, 2, no, no) \ 1038 SC( 91, 27, 25, 3, no, no) \ 1039 SC( 92, 27, 25, 4, no, no) \ 1040 \ 1041 SC( 93, 28, 26, 1, no, no) \ 1042 SC( 94, 28, 26, 2, no, no) \ 1043 SC( 95, 28, 26, 3, no, no) \ 1044 SC( 96, 28, 26, 4, no, no) \ 1045 \ 1046 SC( 97, 29, 27, 1, no, no) \ 1047 SC( 98, 29, 27, 2, no, no) \ 1048 SC( 99, 29, 27, 3, no, no) \ 1049 SC(100, 29, 27, 4, no, no) \ 1050 \ 1051 SC(101, 30, 28, 1, no, no) \ 1052 SC(102, 30, 28, 2, no, no) \ 1053 SC(103, 30, 28, 3, no, no) \ 1054 1055#define SIZE_CLASSES_DEFINED 1056#define NTBINS 1 1057#define NLBINS 29 1058#define NBINS 44 1059#define NSIZES 104 1060#define LG_TINY_MAXCLASS 3 1061#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1062#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 1063#define LG_LARGE_MINCLASS 16 1064#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1065#endif 1066 1067#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 16) 1068#define SIZE_CLASSES \ 1069 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1070 SC( 0, 3, 3, 0, yes, 3) \ 1071 \ 1072 SC( 1, 3, 3, 1, yes, 3) \ 1073 SC( 2, 4, 4, 1, yes, 4) \ 1074 SC( 3, 4, 4, 2, yes, 4) \ 1075 SC( 4, 4, 4, 3, yes, 4) \ 1076 \ 1077 SC( 5, 6, 4, 1, yes, 4) \ 1078 SC( 6, 6, 4, 2, yes, 4) \ 1079 SC( 7, 6, 4, 3, yes, 4) \ 1080 SC( 8, 6, 4, 4, yes, 4) \ 1081 \ 1082 SC( 9, 7, 5, 1, yes, 5) \ 1083 SC( 10, 7, 5, 2, yes, 5) \ 1084 SC( 11, 7, 5, 3, yes, 5) \ 1085 SC( 12, 7, 5, 4, yes, 5) \ 1086 \ 1087 SC( 13, 8, 6, 1, yes, 6) \ 1088 SC( 14, 8, 6, 2, yes, 6) \ 1089 SC( 15, 8, 6, 3, yes, 6) \ 1090 SC( 16, 8, 6, 4, yes, 6) \ 1091 \ 1092 SC( 17, 9, 7, 1, yes, 7) \ 1093 SC( 18, 9, 7, 2, yes, 7) \ 1094 SC( 19, 9, 7, 3, yes, 7) \ 1095 SC( 20, 9, 7, 4, yes, 7) \ 1096 \ 1097 SC( 21, 10, 8, 1, yes, 8) \ 1098 SC( 22, 10, 8, 2, yes, 8) \ 1099 SC( 23, 10, 8, 3, yes, 8) \ 1100 SC( 24, 10, 8, 4, yes, 8) \ 1101 \ 1102 SC( 25, 11, 9, 1, yes, 9) \ 1103 SC( 26, 11, 9, 2, yes, 9) \ 1104 SC( 27, 11, 9, 3, yes, 9) \ 1105 SC( 28, 11, 9, 4, yes, 9) \ 1106 \ 1107 SC( 29, 12, 10, 1, yes, no) \ 1108 SC( 30, 12, 10, 2, yes, no) \ 1109 SC( 31, 12, 10, 3, yes, no) \ 1110 SC( 32, 12, 10, 4, yes, no) \ 1111 \ 1112 SC( 33, 13, 11, 1, yes, no) \ 1113 SC( 34, 13, 11, 2, yes, no) \ 1114 SC( 35, 13, 11, 3, yes, no) \ 1115 SC( 36, 13, 11, 4, yes, no) \ 1116 \ 1117 SC( 37, 14, 12, 1, yes, no) \ 1118 SC( 38, 14, 12, 2, yes, no) \ 1119 SC( 39, 14, 12, 3, yes, no) \ 1120 SC( 40, 14, 12, 4, yes, no) \ 1121 \ 1122 SC( 41, 15, 13, 1, yes, no) \ 1123 SC( 42, 15, 13, 2, yes, no) \ 1124 SC( 43, 15, 13, 3, yes, no) \ 1125 SC( 44, 15, 13, 4, yes, no) \ 1126 \ 1127 SC( 45, 16, 14, 1, yes, no) \ 1128 SC( 46, 16, 14, 2, yes, no) \ 1129 SC( 47, 16, 14, 3, yes, no) \ 1130 SC( 48, 16, 14, 4, yes, no) \ 1131 \ 1132 SC( 49, 17, 15, 1, yes, no) \ 1133 SC( 50, 17, 15, 2, yes, no) \ 1134 SC( 51, 17, 15, 3, yes, no) \ 1135 SC( 52, 17, 15, 4, no, no) \ 1136 \ 1137 SC( 53, 18, 16, 1, no, no) \ 1138 SC( 54, 18, 16, 2, no, no) \ 1139 SC( 55, 18, 16, 3, no, no) \ 1140 SC( 56, 18, 16, 4, no, no) \ 1141 \ 1142 SC( 57, 19, 17, 1, no, no) \ 1143 SC( 58, 19, 17, 2, no, no) \ 1144 SC( 59, 19, 17, 3, no, no) \ 1145 SC( 60, 19, 17, 4, no, no) \ 1146 \ 1147 SC( 61, 20, 18, 1, no, no) \ 1148 SC( 62, 20, 18, 2, no, no) \ 1149 SC( 63, 20, 18, 3, no, no) \ 1150 SC( 64, 20, 18, 4, no, no) \ 1151 \ 1152 SC( 65, 21, 19, 1, no, no) \ 1153 SC( 66, 21, 19, 2, no, no) \ 1154 SC( 67, 21, 19, 3, no, no) \ 1155 SC( 68, 21, 19, 4, no, no) \ 1156 \ 1157 SC( 69, 22, 20, 1, no, no) \ 1158 SC( 70, 22, 20, 2, no, no) \ 1159 SC( 71, 22, 20, 3, no, no) \ 1160 SC( 72, 22, 20, 4, no, no) \ 1161 \ 1162 SC( 73, 23, 21, 1, no, no) \ 1163 SC( 74, 23, 21, 2, no, no) \ 1164 SC( 75, 23, 21, 3, no, no) \ 1165 SC( 76, 23, 21, 4, no, no) \ 1166 \ 1167 SC( 77, 24, 22, 1, no, no) \ 1168 SC( 78, 24, 22, 2, no, no) \ 1169 SC( 79, 24, 22, 3, no, no) \ 1170 SC( 80, 24, 22, 4, no, no) \ 1171 \ 1172 SC( 81, 25, 23, 1, no, no) \ 1173 SC( 82, 25, 23, 2, no, no) \ 1174 SC( 83, 25, 23, 3, no, no) \ 1175 SC( 84, 25, 23, 4, no, no) \ 1176 \ 1177 SC( 85, 26, 24, 1, no, no) \ 1178 SC( 86, 26, 24, 2, no, no) \ 1179 SC( 87, 26, 24, 3, no, no) \ 1180 SC( 88, 26, 24, 4, no, no) \ 1181 \ 1182 SC( 89, 27, 25, 1, no, no) \ 1183 SC( 90, 27, 25, 2, no, no) \ 1184 SC( 91, 27, 25, 3, no, no) \ 1185 SC( 92, 27, 25, 4, no, no) \ 1186 \ 1187 SC( 93, 28, 26, 1, no, no) \ 1188 SC( 94, 28, 26, 2, no, no) \ 1189 SC( 95, 28, 26, 3, no, no) \ 1190 SC( 96, 28, 26, 4, no, no) \ 1191 \ 1192 SC( 97, 29, 27, 1, no, no) \ 1193 SC( 98, 29, 27, 2, no, no) \ 1194 SC( 99, 29, 27, 3, no, no) \ 1195 SC(100, 29, 27, 4, no, no) \ 1196 \ 1197 SC(101, 30, 28, 1, no, no) \ 1198 SC(102, 30, 28, 2, no, no) \ 1199 SC(103, 30, 28, 3, no, no) \ 1200 1201#define SIZE_CLASSES_DEFINED 1202#define NTBINS 1 1203#define NLBINS 29 1204#define NBINS 52 1205#define NSIZES 104 1206#define LG_TINY_MAXCLASS 3 1207#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1208#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 1209#define LG_LARGE_MINCLASS 18 1210#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1211#endif 1212 1213#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 12) 1214#define SIZE_CLASSES \ 1215 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1216 SC( 0, 4, 4, 0, yes, 4) \ 1217 SC( 1, 4, 4, 1, yes, 4) \ 1218 SC( 2, 4, 4, 2, yes, 4) \ 1219 SC( 3, 4, 4, 3, yes, 4) \ 1220 \ 1221 SC( 4, 6, 4, 1, yes, 4) \ 1222 SC( 5, 6, 4, 2, yes, 4) \ 1223 SC( 6, 6, 4, 3, yes, 4) \ 1224 SC( 7, 6, 4, 4, yes, 4) \ 1225 \ 1226 SC( 8, 7, 5, 1, yes, 5) \ 1227 SC( 9, 7, 5, 2, yes, 5) \ 1228 SC( 10, 7, 5, 3, yes, 5) \ 1229 SC( 11, 7, 5, 4, yes, 5) \ 1230 \ 1231 SC( 12, 8, 6, 1, yes, 6) \ 1232 SC( 13, 8, 6, 2, yes, 6) \ 1233 SC( 14, 8, 6, 3, yes, 6) \ 1234 SC( 15, 8, 6, 4, yes, 6) \ 1235 \ 1236 SC( 16, 9, 7, 1, yes, 7) \ 1237 SC( 17, 9, 7, 2, yes, 7) \ 1238 SC( 18, 9, 7, 3, yes, 7) \ 1239 SC( 19, 9, 7, 4, yes, 7) \ 1240 \ 1241 SC( 20, 10, 8, 1, yes, 8) \ 1242 SC( 21, 10, 8, 2, yes, 8) \ 1243 SC( 22, 10, 8, 3, yes, 8) \ 1244 SC( 23, 10, 8, 4, yes, 8) \ 1245 \ 1246 SC( 24, 11, 9, 1, yes, 9) \ 1247 SC( 25, 11, 9, 2, yes, 9) \ 1248 SC( 26, 11, 9, 3, yes, 9) \ 1249 SC( 27, 11, 9, 4, yes, 9) \ 1250 \ 1251 SC( 28, 12, 10, 1, yes, no) \ 1252 SC( 29, 12, 10, 2, yes, no) \ 1253 SC( 30, 12, 10, 3, yes, no) \ 1254 SC( 31, 12, 10, 4, yes, no) \ 1255 \ 1256 SC( 32, 13, 11, 1, yes, no) \ 1257 SC( 33, 13, 11, 2, yes, no) \ 1258 SC( 34, 13, 11, 3, yes, no) \ 1259 SC( 35, 13, 11, 4, no, no) \ 1260 \ 1261 SC( 36, 14, 12, 1, no, no) \ 1262 SC( 37, 14, 12, 2, no, no) \ 1263 SC( 38, 14, 12, 3, no, no) \ 1264 SC( 39, 14, 12, 4, no, no) \ 1265 \ 1266 SC( 40, 15, 13, 1, no, no) \ 1267 SC( 41, 15, 13, 2, no, no) \ 1268 SC( 42, 15, 13, 3, no, no) \ 1269 SC( 43, 15, 13, 4, no, no) \ 1270 \ 1271 SC( 44, 16, 14, 1, no, no) \ 1272 SC( 45, 16, 14, 2, no, no) \ 1273 SC( 46, 16, 14, 3, no, no) \ 1274 SC( 47, 16, 14, 4, no, no) \ 1275 \ 1276 SC( 48, 17, 15, 1, no, no) \ 1277 SC( 49, 17, 15, 2, no, no) \ 1278 SC( 50, 17, 15, 3, no, no) \ 1279 SC( 51, 17, 15, 4, no, no) \ 1280 \ 1281 SC( 52, 18, 16, 1, no, no) \ 1282 SC( 53, 18, 16, 2, no, no) \ 1283 SC( 54, 18, 16, 3, no, no) \ 1284 SC( 55, 18, 16, 4, no, no) \ 1285 \ 1286 SC( 56, 19, 17, 1, no, no) \ 1287 SC( 57, 19, 17, 2, no, no) \ 1288 SC( 58, 19, 17, 3, no, no) \ 1289 SC( 59, 19, 17, 4, no, no) \ 1290 \ 1291 SC( 60, 20, 18, 1, no, no) \ 1292 SC( 61, 20, 18, 2, no, no) \ 1293 SC( 62, 20, 18, 3, no, no) \ 1294 SC( 63, 20, 18, 4, no, no) \ 1295 \ 1296 SC( 64, 21, 19, 1, no, no) \ 1297 SC( 65, 21, 19, 2, no, no) \ 1298 SC( 66, 21, 19, 3, no, no) \ 1299 SC( 67, 21, 19, 4, no, no) \ 1300 \ 1301 SC( 68, 22, 20, 1, no, no) \ 1302 SC( 69, 22, 20, 2, no, no) \ 1303 SC( 70, 22, 20, 3, no, no) \ 1304 SC( 71, 22, 20, 4, no, no) \ 1305 \ 1306 SC( 72, 23, 21, 1, no, no) \ 1307 SC( 73, 23, 21, 2, no, no) \ 1308 SC( 74, 23, 21, 3, no, no) \ 1309 SC( 75, 23, 21, 4, no, no) \ 1310 \ 1311 SC( 76, 24, 22, 1, no, no) \ 1312 SC( 77, 24, 22, 2, no, no) \ 1313 SC( 78, 24, 22, 3, no, no) \ 1314 SC( 79, 24, 22, 4, no, no) \ 1315 \ 1316 SC( 80, 25, 23, 1, no, no) \ 1317 SC( 81, 25, 23, 2, no, no) \ 1318 SC( 82, 25, 23, 3, no, no) \ 1319 SC( 83, 25, 23, 4, no, no) \ 1320 \ 1321 SC( 84, 26, 24, 1, no, no) \ 1322 SC( 85, 26, 24, 2, no, no) \ 1323 SC( 86, 26, 24, 3, no, no) \ 1324 SC( 87, 26, 24, 4, no, no) \ 1325 \ 1326 SC( 88, 27, 25, 1, no, no) \ 1327 SC( 89, 27, 25, 2, no, no) \ 1328 SC( 90, 27, 25, 3, no, no) \ 1329 SC( 91, 27, 25, 4, no, no) \ 1330 \ 1331 SC( 92, 28, 26, 1, no, no) \ 1332 SC( 93, 28, 26, 2, no, no) \ 1333 SC( 94, 28, 26, 3, no, no) \ 1334 SC( 95, 28, 26, 4, no, no) \ 1335 \ 1336 SC( 96, 29, 27, 1, no, no) \ 1337 SC( 97, 29, 27, 2, no, no) \ 1338 SC( 98, 29, 27, 3, no, no) \ 1339 SC( 99, 29, 27, 4, no, no) \ 1340 \ 1341 SC(100, 30, 28, 1, no, no) \ 1342 SC(101, 30, 28, 2, no, no) \ 1343 SC(102, 30, 28, 3, no, no) \ 1344 1345#define SIZE_CLASSES_DEFINED 1346#define NTBINS 0 1347#define NLBINS 28 1348#define NBINS 35 1349#define NSIZES 103 1350#define LG_TINY_MAXCLASS "NA" 1351#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1352#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 1353#define LG_LARGE_MINCLASS 14 1354#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1355#endif 1356 1357#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 13) 1358#define SIZE_CLASSES \ 1359 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1360 SC( 0, 4, 4, 0, yes, 4) \ 1361 SC( 1, 4, 4, 1, yes, 4) \ 1362 SC( 2, 4, 4, 2, yes, 4) \ 1363 SC( 3, 4, 4, 3, yes, 4) \ 1364 \ 1365 SC( 4, 6, 4, 1, yes, 4) \ 1366 SC( 5, 6, 4, 2, yes, 4) \ 1367 SC( 6, 6, 4, 3, yes, 4) \ 1368 SC( 7, 6, 4, 4, yes, 4) \ 1369 \ 1370 SC( 8, 7, 5, 1, yes, 5) \ 1371 SC( 9, 7, 5, 2, yes, 5) \ 1372 SC( 10, 7, 5, 3, yes, 5) \ 1373 SC( 11, 7, 5, 4, yes, 5) \ 1374 \ 1375 SC( 12, 8, 6, 1, yes, 6) \ 1376 SC( 13, 8, 6, 2, yes, 6) \ 1377 SC( 14, 8, 6, 3, yes, 6) \ 1378 SC( 15, 8, 6, 4, yes, 6) \ 1379 \ 1380 SC( 16, 9, 7, 1, yes, 7) \ 1381 SC( 17, 9, 7, 2, yes, 7) \ 1382 SC( 18, 9, 7, 3, yes, 7) \ 1383 SC( 19, 9, 7, 4, yes, 7) \ 1384 \ 1385 SC( 20, 10, 8, 1, yes, 8) \ 1386 SC( 21, 10, 8, 2, yes, 8) \ 1387 SC( 22, 10, 8, 3, yes, 8) \ 1388 SC( 23, 10, 8, 4, yes, 8) \ 1389 \ 1390 SC( 24, 11, 9, 1, yes, 9) \ 1391 SC( 25, 11, 9, 2, yes, 9) \ 1392 SC( 26, 11, 9, 3, yes, 9) \ 1393 SC( 27, 11, 9, 4, yes, 9) \ 1394 \ 1395 SC( 28, 12, 10, 1, yes, no) \ 1396 SC( 29, 12, 10, 2, yes, no) \ 1397 SC( 30, 12, 10, 3, yes, no) \ 1398 SC( 31, 12, 10, 4, yes, no) \ 1399 \ 1400 SC( 32, 13, 11, 1, yes, no) \ 1401 SC( 33, 13, 11, 2, yes, no) \ 1402 SC( 34, 13, 11, 3, yes, no) \ 1403 SC( 35, 13, 11, 4, yes, no) \ 1404 \ 1405 SC( 36, 14, 12, 1, yes, no) \ 1406 SC( 37, 14, 12, 2, yes, no) \ 1407 SC( 38, 14, 12, 3, yes, no) \ 1408 SC( 39, 14, 12, 4, no, no) \ 1409 \ 1410 SC( 40, 15, 13, 1, no, no) \ 1411 SC( 41, 15, 13, 2, no, no) \ 1412 SC( 42, 15, 13, 3, no, no) \ 1413 SC( 43, 15, 13, 4, no, no) \ 1414 \ 1415 SC( 44, 16, 14, 1, no, no) \ 1416 SC( 45, 16, 14, 2, no, no) \ 1417 SC( 46, 16, 14, 3, no, no) \ 1418 SC( 47, 16, 14, 4, no, no) \ 1419 \ 1420 SC( 48, 17, 15, 1, no, no) \ 1421 SC( 49, 17, 15, 2, no, no) \ 1422 SC( 50, 17, 15, 3, no, no) \ 1423 SC( 51, 17, 15, 4, no, no) \ 1424 \ 1425 SC( 52, 18, 16, 1, no, no) \ 1426 SC( 53, 18, 16, 2, no, no) \ 1427 SC( 54, 18, 16, 3, no, no) \ 1428 SC( 55, 18, 16, 4, no, no) \ 1429 \ 1430 SC( 56, 19, 17, 1, no, no) \ 1431 SC( 57, 19, 17, 2, no, no) \ 1432 SC( 58, 19, 17, 3, no, no) \ 1433 SC( 59, 19, 17, 4, no, no) \ 1434 \ 1435 SC( 60, 20, 18, 1, no, no) \ 1436 SC( 61, 20, 18, 2, no, no) \ 1437 SC( 62, 20, 18, 3, no, no) \ 1438 SC( 63, 20, 18, 4, no, no) \ 1439 \ 1440 SC( 64, 21, 19, 1, no, no) \ 1441 SC( 65, 21, 19, 2, no, no) \ 1442 SC( 66, 21, 19, 3, no, no) \ 1443 SC( 67, 21, 19, 4, no, no) \ 1444 \ 1445 SC( 68, 22, 20, 1, no, no) \ 1446 SC( 69, 22, 20, 2, no, no) \ 1447 SC( 70, 22, 20, 3, no, no) \ 1448 SC( 71, 22, 20, 4, no, no) \ 1449 \ 1450 SC( 72, 23, 21, 1, no, no) \ 1451 SC( 73, 23, 21, 2, no, no) \ 1452 SC( 74, 23, 21, 3, no, no) \ 1453 SC( 75, 23, 21, 4, no, no) \ 1454 \ 1455 SC( 76, 24, 22, 1, no, no) \ 1456 SC( 77, 24, 22, 2, no, no) \ 1457 SC( 78, 24, 22, 3, no, no) \ 1458 SC( 79, 24, 22, 4, no, no) \ 1459 \ 1460 SC( 80, 25, 23, 1, no, no) \ 1461 SC( 81, 25, 23, 2, no, no) \ 1462 SC( 82, 25, 23, 3, no, no) \ 1463 SC( 83, 25, 23, 4, no, no) \ 1464 \ 1465 SC( 84, 26, 24, 1, no, no) \ 1466 SC( 85, 26, 24, 2, no, no) \ 1467 SC( 86, 26, 24, 3, no, no) \ 1468 SC( 87, 26, 24, 4, no, no) \ 1469 \ 1470 SC( 88, 27, 25, 1, no, no) \ 1471 SC( 89, 27, 25, 2, no, no) \ 1472 SC( 90, 27, 25, 3, no, no) \ 1473 SC( 91, 27, 25, 4, no, no) \ 1474 \ 1475 SC( 92, 28, 26, 1, no, no) \ 1476 SC( 93, 28, 26, 2, no, no) \ 1477 SC( 94, 28, 26, 3, no, no) \ 1478 SC( 95, 28, 26, 4, no, no) \ 1479 \ 1480 SC( 96, 29, 27, 1, no, no) \ 1481 SC( 97, 29, 27, 2, no, no) \ 1482 SC( 98, 29, 27, 3, no, no) \ 1483 SC( 99, 29, 27, 4, no, no) \ 1484 \ 1485 SC(100, 30, 28, 1, no, no) \ 1486 SC(101, 30, 28, 2, no, no) \ 1487 SC(102, 30, 28, 3, no, no) \ 1488 1489#define SIZE_CLASSES_DEFINED 1490#define NTBINS 0 1491#define NLBINS 28 1492#define NBINS 39 1493#define NSIZES 103 1494#define LG_TINY_MAXCLASS "NA" 1495#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1496#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 1497#define LG_LARGE_MINCLASS 15 1498#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1499#endif 1500 1501#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 14) 1502#define SIZE_CLASSES \ 1503 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1504 SC( 0, 4, 4, 0, yes, 4) \ 1505 SC( 1, 4, 4, 1, yes, 4) \ 1506 SC( 2, 4, 4, 2, yes, 4) \ 1507 SC( 3, 4, 4, 3, yes, 4) \ 1508 \ 1509 SC( 4, 6, 4, 1, yes, 4) \ 1510 SC( 5, 6, 4, 2, yes, 4) \ 1511 SC( 6, 6, 4, 3, yes, 4) \ 1512 SC( 7, 6, 4, 4, yes, 4) \ 1513 \ 1514 SC( 8, 7, 5, 1, yes, 5) \ 1515 SC( 9, 7, 5, 2, yes, 5) \ 1516 SC( 10, 7, 5, 3, yes, 5) \ 1517 SC( 11, 7, 5, 4, yes, 5) \ 1518 \ 1519 SC( 12, 8, 6, 1, yes, 6) \ 1520 SC( 13, 8, 6, 2, yes, 6) \ 1521 SC( 14, 8, 6, 3, yes, 6) \ 1522 SC( 15, 8, 6, 4, yes, 6) \ 1523 \ 1524 SC( 16, 9, 7, 1, yes, 7) \ 1525 SC( 17, 9, 7, 2, yes, 7) \ 1526 SC( 18, 9, 7, 3, yes, 7) \ 1527 SC( 19, 9, 7, 4, yes, 7) \ 1528 \ 1529 SC( 20, 10, 8, 1, yes, 8) \ 1530 SC( 21, 10, 8, 2, yes, 8) \ 1531 SC( 22, 10, 8, 3, yes, 8) \ 1532 SC( 23, 10, 8, 4, yes, 8) \ 1533 \ 1534 SC( 24, 11, 9, 1, yes, 9) \ 1535 SC( 25, 11, 9, 2, yes, 9) \ 1536 SC( 26, 11, 9, 3, yes, 9) \ 1537 SC( 27, 11, 9, 4, yes, 9) \ 1538 \ 1539 SC( 28, 12, 10, 1, yes, no) \ 1540 SC( 29, 12, 10, 2, yes, no) \ 1541 SC( 30, 12, 10, 3, yes, no) \ 1542 SC( 31, 12, 10, 4, yes, no) \ 1543 \ 1544 SC( 32, 13, 11, 1, yes, no) \ 1545 SC( 33, 13, 11, 2, yes, no) \ 1546 SC( 34, 13, 11, 3, yes, no) \ 1547 SC( 35, 13, 11, 4, yes, no) \ 1548 \ 1549 SC( 36, 14, 12, 1, yes, no) \ 1550 SC( 37, 14, 12, 2, yes, no) \ 1551 SC( 38, 14, 12, 3, yes, no) \ 1552 SC( 39, 14, 12, 4, yes, no) \ 1553 \ 1554 SC( 40, 15, 13, 1, yes, no) \ 1555 SC( 41, 15, 13, 2, yes, no) \ 1556 SC( 42, 15, 13, 3, yes, no) \ 1557 SC( 43, 15, 13, 4, no, no) \ 1558 \ 1559 SC( 44, 16, 14, 1, no, no) \ 1560 SC( 45, 16, 14, 2, no, no) \ 1561 SC( 46, 16, 14, 3, no, no) \ 1562 SC( 47, 16, 14, 4, no, no) \ 1563 \ 1564 SC( 48, 17, 15, 1, no, no) \ 1565 SC( 49, 17, 15, 2, no, no) \ 1566 SC( 50, 17, 15, 3, no, no) \ 1567 SC( 51, 17, 15, 4, no, no) \ 1568 \ 1569 SC( 52, 18, 16, 1, no, no) \ 1570 SC( 53, 18, 16, 2, no, no) \ 1571 SC( 54, 18, 16, 3, no, no) \ 1572 SC( 55, 18, 16, 4, no, no) \ 1573 \ 1574 SC( 56, 19, 17, 1, no, no) \ 1575 SC( 57, 19, 17, 2, no, no) \ 1576 SC( 58, 19, 17, 3, no, no) \ 1577 SC( 59, 19, 17, 4, no, no) \ 1578 \ 1579 SC( 60, 20, 18, 1, no, no) \ 1580 SC( 61, 20, 18, 2, no, no) \ 1581 SC( 62, 20, 18, 3, no, no) \ 1582 SC( 63, 20, 18, 4, no, no) \ 1583 \ 1584 SC( 64, 21, 19, 1, no, no) \ 1585 SC( 65, 21, 19, 2, no, no) \ 1586 SC( 66, 21, 19, 3, no, no) \ 1587 SC( 67, 21, 19, 4, no, no) \ 1588 \ 1589 SC( 68, 22, 20, 1, no, no) \ 1590 SC( 69, 22, 20, 2, no, no) \ 1591 SC( 70, 22, 20, 3, no, no) \ 1592 SC( 71, 22, 20, 4, no, no) \ 1593 \ 1594 SC( 72, 23, 21, 1, no, no) \ 1595 SC( 73, 23, 21, 2, no, no) \ 1596 SC( 74, 23, 21, 3, no, no) \ 1597 SC( 75, 23, 21, 4, no, no) \ 1598 \ 1599 SC( 76, 24, 22, 1, no, no) \ 1600 SC( 77, 24, 22, 2, no, no) \ 1601 SC( 78, 24, 22, 3, no, no) \ 1602 SC( 79, 24, 22, 4, no, no) \ 1603 \ 1604 SC( 80, 25, 23, 1, no, no) \ 1605 SC( 81, 25, 23, 2, no, no) \ 1606 SC( 82, 25, 23, 3, no, no) \ 1607 SC( 83, 25, 23, 4, no, no) \ 1608 \ 1609 SC( 84, 26, 24, 1, no, no) \ 1610 SC( 85, 26, 24, 2, no, no) \ 1611 SC( 86, 26, 24, 3, no, no) \ 1612 SC( 87, 26, 24, 4, no, no) \ 1613 \ 1614 SC( 88, 27, 25, 1, no, no) \ 1615 SC( 89, 27, 25, 2, no, no) \ 1616 SC( 90, 27, 25, 3, no, no) \ 1617 SC( 91, 27, 25, 4, no, no) \ 1618 \ 1619 SC( 92, 28, 26, 1, no, no) \ 1620 SC( 93, 28, 26, 2, no, no) \ 1621 SC( 94, 28, 26, 3, no, no) \ 1622 SC( 95, 28, 26, 4, no, no) \ 1623 \ 1624 SC( 96, 29, 27, 1, no, no) \ 1625 SC( 97, 29, 27, 2, no, no) \ 1626 SC( 98, 29, 27, 3, no, no) \ 1627 SC( 99, 29, 27, 4, no, no) \ 1628 \ 1629 SC(100, 30, 28, 1, no, no) \ 1630 SC(101, 30, 28, 2, no, no) \ 1631 SC(102, 30, 28, 3, no, no) \ 1632 1633#define SIZE_CLASSES_DEFINED 1634#define NTBINS 0 1635#define NLBINS 28 1636#define NBINS 43 1637#define NSIZES 103 1638#define LG_TINY_MAXCLASS "NA" 1639#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1640#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 1641#define LG_LARGE_MINCLASS 16 1642#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1643#endif 1644 1645#if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 16) 1646#define SIZE_CLASSES \ 1647 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1648 SC( 0, 4, 4, 0, yes, 4) \ 1649 SC( 1, 4, 4, 1, yes, 4) \ 1650 SC( 2, 4, 4, 2, yes, 4) \ 1651 SC( 3, 4, 4, 3, yes, 4) \ 1652 \ 1653 SC( 4, 6, 4, 1, yes, 4) \ 1654 SC( 5, 6, 4, 2, yes, 4) \ 1655 SC( 6, 6, 4, 3, yes, 4) \ 1656 SC( 7, 6, 4, 4, yes, 4) \ 1657 \ 1658 SC( 8, 7, 5, 1, yes, 5) \ 1659 SC( 9, 7, 5, 2, yes, 5) \ 1660 SC( 10, 7, 5, 3, yes, 5) \ 1661 SC( 11, 7, 5, 4, yes, 5) \ 1662 \ 1663 SC( 12, 8, 6, 1, yes, 6) \ 1664 SC( 13, 8, 6, 2, yes, 6) \ 1665 SC( 14, 8, 6, 3, yes, 6) \ 1666 SC( 15, 8, 6, 4, yes, 6) \ 1667 \ 1668 SC( 16, 9, 7, 1, yes, 7) \ 1669 SC( 17, 9, 7, 2, yes, 7) \ 1670 SC( 18, 9, 7, 3, yes, 7) \ 1671 SC( 19, 9, 7, 4, yes, 7) \ 1672 \ 1673 SC( 20, 10, 8, 1, yes, 8) \ 1674 SC( 21, 10, 8, 2, yes, 8) \ 1675 SC( 22, 10, 8, 3, yes, 8) \ 1676 SC( 23, 10, 8, 4, yes, 8) \ 1677 \ 1678 SC( 24, 11, 9, 1, yes, 9) \ 1679 SC( 25, 11, 9, 2, yes, 9) \ 1680 SC( 26, 11, 9, 3, yes, 9) \ 1681 SC( 27, 11, 9, 4, yes, 9) \ 1682 \ 1683 SC( 28, 12, 10, 1, yes, no) \ 1684 SC( 29, 12, 10, 2, yes, no) \ 1685 SC( 30, 12, 10, 3, yes, no) \ 1686 SC( 31, 12, 10, 4, yes, no) \ 1687 \ 1688 SC( 32, 13, 11, 1, yes, no) \ 1689 SC( 33, 13, 11, 2, yes, no) \ 1690 SC( 34, 13, 11, 3, yes, no) \ 1691 SC( 35, 13, 11, 4, yes, no) \ 1692 \ 1693 SC( 36, 14, 12, 1, yes, no) \ 1694 SC( 37, 14, 12, 2, yes, no) \ 1695 SC( 38, 14, 12, 3, yes, no) \ 1696 SC( 39, 14, 12, 4, yes, no) \ 1697 \ 1698 SC( 40, 15, 13, 1, yes, no) \ 1699 SC( 41, 15, 13, 2, yes, no) \ 1700 SC( 42, 15, 13, 3, yes, no) \ 1701 SC( 43, 15, 13, 4, yes, no) \ 1702 \ 1703 SC( 44, 16, 14, 1, yes, no) \ 1704 SC( 45, 16, 14, 2, yes, no) \ 1705 SC( 46, 16, 14, 3, yes, no) \ 1706 SC( 47, 16, 14, 4, yes, no) \ 1707 \ 1708 SC( 48, 17, 15, 1, yes, no) \ 1709 SC( 49, 17, 15, 2, yes, no) \ 1710 SC( 50, 17, 15, 3, yes, no) \ 1711 SC( 51, 17, 15, 4, no, no) \ 1712 \ 1713 SC( 52, 18, 16, 1, no, no) \ 1714 SC( 53, 18, 16, 2, no, no) \ 1715 SC( 54, 18, 16, 3, no, no) \ 1716 SC( 55, 18, 16, 4, no, no) \ 1717 \ 1718 SC( 56, 19, 17, 1, no, no) \ 1719 SC( 57, 19, 17, 2, no, no) \ 1720 SC( 58, 19, 17, 3, no, no) \ 1721 SC( 59, 19, 17, 4, no, no) \ 1722 \ 1723 SC( 60, 20, 18, 1, no, no) \ 1724 SC( 61, 20, 18, 2, no, no) \ 1725 SC( 62, 20, 18, 3, no, no) \ 1726 SC( 63, 20, 18, 4, no, no) \ 1727 \ 1728 SC( 64, 21, 19, 1, no, no) \ 1729 SC( 65, 21, 19, 2, no, no) \ 1730 SC( 66, 21, 19, 3, no, no) \ 1731 SC( 67, 21, 19, 4, no, no) \ 1732 \ 1733 SC( 68, 22, 20, 1, no, no) \ 1734 SC( 69, 22, 20, 2, no, no) \ 1735 SC( 70, 22, 20, 3, no, no) \ 1736 SC( 71, 22, 20, 4, no, no) \ 1737 \ 1738 SC( 72, 23, 21, 1, no, no) \ 1739 SC( 73, 23, 21, 2, no, no) \ 1740 SC( 74, 23, 21, 3, no, no) \ 1741 SC( 75, 23, 21, 4, no, no) \ 1742 \ 1743 SC( 76, 24, 22, 1, no, no) \ 1744 SC( 77, 24, 22, 2, no, no) \ 1745 SC( 78, 24, 22, 3, no, no) \ 1746 SC( 79, 24, 22, 4, no, no) \ 1747 \ 1748 SC( 80, 25, 23, 1, no, no) \ 1749 SC( 81, 25, 23, 2, no, no) \ 1750 SC( 82, 25, 23, 3, no, no) \ 1751 SC( 83, 25, 23, 4, no, no) \ 1752 \ 1753 SC( 84, 26, 24, 1, no, no) \ 1754 SC( 85, 26, 24, 2, no, no) \ 1755 SC( 86, 26, 24, 3, no, no) \ 1756 SC( 87, 26, 24, 4, no, no) \ 1757 \ 1758 SC( 88, 27, 25, 1, no, no) \ 1759 SC( 89, 27, 25, 2, no, no) \ 1760 SC( 90, 27, 25, 3, no, no) \ 1761 SC( 91, 27, 25, 4, no, no) \ 1762 \ 1763 SC( 92, 28, 26, 1, no, no) \ 1764 SC( 93, 28, 26, 2, no, no) \ 1765 SC( 94, 28, 26, 3, no, no) \ 1766 SC( 95, 28, 26, 4, no, no) \ 1767 \ 1768 SC( 96, 29, 27, 1, no, no) \ 1769 SC( 97, 29, 27, 2, no, no) \ 1770 SC( 98, 29, 27, 3, no, no) \ 1771 SC( 99, 29, 27, 4, no, no) \ 1772 \ 1773 SC(100, 30, 28, 1, no, no) \ 1774 SC(101, 30, 28, 2, no, no) \ 1775 SC(102, 30, 28, 3, no, no) \ 1776 1777#define SIZE_CLASSES_DEFINED 1778#define NTBINS 0 1779#define NLBINS 28 1780#define NBINS 51 1781#define NSIZES 103 1782#define LG_TINY_MAXCLASS "NA" 1783#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 1784#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 1785#define LG_LARGE_MINCLASS 18 1786#define HUGE_MAXCLASS ((((size_t)1) << 30) + (((size_t)3) << 28)) 1787#endif 1788 1789#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 12) 1790#define SIZE_CLASSES \ 1791 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 1792 SC( 0, 3, 3, 0, yes, 3) \ 1793 SC( 1, 3, 3, 1, yes, 3) \ 1794 SC( 2, 3, 3, 2, yes, 3) \ 1795 SC( 3, 3, 3, 3, yes, 3) \ 1796 \ 1797 SC( 4, 5, 3, 1, yes, 3) \ 1798 SC( 5, 5, 3, 2, yes, 3) \ 1799 SC( 6, 5, 3, 3, yes, 3) \ 1800 SC( 7, 5, 3, 4, yes, 3) \ 1801 \ 1802 SC( 8, 6, 4, 1, yes, 4) \ 1803 SC( 9, 6, 4, 2, yes, 4) \ 1804 SC( 10, 6, 4, 3, yes, 4) \ 1805 SC( 11, 6, 4, 4, yes, 4) \ 1806 \ 1807 SC( 12, 7, 5, 1, yes, 5) \ 1808 SC( 13, 7, 5, 2, yes, 5) \ 1809 SC( 14, 7, 5, 3, yes, 5) \ 1810 SC( 15, 7, 5, 4, yes, 5) \ 1811 \ 1812 SC( 16, 8, 6, 1, yes, 6) \ 1813 SC( 17, 8, 6, 2, yes, 6) \ 1814 SC( 18, 8, 6, 3, yes, 6) \ 1815 SC( 19, 8, 6, 4, yes, 6) \ 1816 \ 1817 SC( 20, 9, 7, 1, yes, 7) \ 1818 SC( 21, 9, 7, 2, yes, 7) \ 1819 SC( 22, 9, 7, 3, yes, 7) \ 1820 SC( 23, 9, 7, 4, yes, 7) \ 1821 \ 1822 SC( 24, 10, 8, 1, yes, 8) \ 1823 SC( 25, 10, 8, 2, yes, 8) \ 1824 SC( 26, 10, 8, 3, yes, 8) \ 1825 SC( 27, 10, 8, 4, yes, 8) \ 1826 \ 1827 SC( 28, 11, 9, 1, yes, 9) \ 1828 SC( 29, 11, 9, 2, yes, 9) \ 1829 SC( 30, 11, 9, 3, yes, 9) \ 1830 SC( 31, 11, 9, 4, yes, 9) \ 1831 \ 1832 SC( 32, 12, 10, 1, yes, no) \ 1833 SC( 33, 12, 10, 2, yes, no) \ 1834 SC( 34, 12, 10, 3, yes, no) \ 1835 SC( 35, 12, 10, 4, yes, no) \ 1836 \ 1837 SC( 36, 13, 11, 1, yes, no) \ 1838 SC( 37, 13, 11, 2, yes, no) \ 1839 SC( 38, 13, 11, 3, yes, no) \ 1840 SC( 39, 13, 11, 4, no, no) \ 1841 \ 1842 SC( 40, 14, 12, 1, no, no) \ 1843 SC( 41, 14, 12, 2, no, no) \ 1844 SC( 42, 14, 12, 3, no, no) \ 1845 SC( 43, 14, 12, 4, no, no) \ 1846 \ 1847 SC( 44, 15, 13, 1, no, no) \ 1848 SC( 45, 15, 13, 2, no, no) \ 1849 SC( 46, 15, 13, 3, no, no) \ 1850 SC( 47, 15, 13, 4, no, no) \ 1851 \ 1852 SC( 48, 16, 14, 1, no, no) \ 1853 SC( 49, 16, 14, 2, no, no) \ 1854 SC( 50, 16, 14, 3, no, no) \ 1855 SC( 51, 16, 14, 4, no, no) \ 1856 \ 1857 SC( 52, 17, 15, 1, no, no) \ 1858 SC( 53, 17, 15, 2, no, no) \ 1859 SC( 54, 17, 15, 3, no, no) \ 1860 SC( 55, 17, 15, 4, no, no) \ 1861 \ 1862 SC( 56, 18, 16, 1, no, no) \ 1863 SC( 57, 18, 16, 2, no, no) \ 1864 SC( 58, 18, 16, 3, no, no) \ 1865 SC( 59, 18, 16, 4, no, no) \ 1866 \ 1867 SC( 60, 19, 17, 1, no, no) \ 1868 SC( 61, 19, 17, 2, no, no) \ 1869 SC( 62, 19, 17, 3, no, no) \ 1870 SC( 63, 19, 17, 4, no, no) \ 1871 \ 1872 SC( 64, 20, 18, 1, no, no) \ 1873 SC( 65, 20, 18, 2, no, no) \ 1874 SC( 66, 20, 18, 3, no, no) \ 1875 SC( 67, 20, 18, 4, no, no) \ 1876 \ 1877 SC( 68, 21, 19, 1, no, no) \ 1878 SC( 69, 21, 19, 2, no, no) \ 1879 SC( 70, 21, 19, 3, no, no) \ 1880 SC( 71, 21, 19, 4, no, no) \ 1881 \ 1882 SC( 72, 22, 20, 1, no, no) \ 1883 SC( 73, 22, 20, 2, no, no) \ 1884 SC( 74, 22, 20, 3, no, no) \ 1885 SC( 75, 22, 20, 4, no, no) \ 1886 \ 1887 SC( 76, 23, 21, 1, no, no) \ 1888 SC( 77, 23, 21, 2, no, no) \ 1889 SC( 78, 23, 21, 3, no, no) \ 1890 SC( 79, 23, 21, 4, no, no) \ 1891 \ 1892 SC( 80, 24, 22, 1, no, no) \ 1893 SC( 81, 24, 22, 2, no, no) \ 1894 SC( 82, 24, 22, 3, no, no) \ 1895 SC( 83, 24, 22, 4, no, no) \ 1896 \ 1897 SC( 84, 25, 23, 1, no, no) \ 1898 SC( 85, 25, 23, 2, no, no) \ 1899 SC( 86, 25, 23, 3, no, no) \ 1900 SC( 87, 25, 23, 4, no, no) \ 1901 \ 1902 SC( 88, 26, 24, 1, no, no) \ 1903 SC( 89, 26, 24, 2, no, no) \ 1904 SC( 90, 26, 24, 3, no, no) \ 1905 SC( 91, 26, 24, 4, no, no) \ 1906 \ 1907 SC( 92, 27, 25, 1, no, no) \ 1908 SC( 93, 27, 25, 2, no, no) \ 1909 SC( 94, 27, 25, 3, no, no) \ 1910 SC( 95, 27, 25, 4, no, no) \ 1911 \ 1912 SC( 96, 28, 26, 1, no, no) \ 1913 SC( 97, 28, 26, 2, no, no) \ 1914 SC( 98, 28, 26, 3, no, no) \ 1915 SC( 99, 28, 26, 4, no, no) \ 1916 \ 1917 SC(100, 29, 27, 1, no, no) \ 1918 SC(101, 29, 27, 2, no, no) \ 1919 SC(102, 29, 27, 3, no, no) \ 1920 SC(103, 29, 27, 4, no, no) \ 1921 \ 1922 SC(104, 30, 28, 1, no, no) \ 1923 SC(105, 30, 28, 2, no, no) \ 1924 SC(106, 30, 28, 3, no, no) \ 1925 SC(107, 30, 28, 4, no, no) \ 1926 \ 1927 SC(108, 31, 29, 1, no, no) \ 1928 SC(109, 31, 29, 2, no, no) \ 1929 SC(110, 31, 29, 3, no, no) \ 1930 SC(111, 31, 29, 4, no, no) \ 1931 \ 1932 SC(112, 32, 30, 1, no, no) \ 1933 SC(113, 32, 30, 2, no, no) \ 1934 SC(114, 32, 30, 3, no, no) \ 1935 SC(115, 32, 30, 4, no, no) \ 1936 \ 1937 SC(116, 33, 31, 1, no, no) \ 1938 SC(117, 33, 31, 2, no, no) \ 1939 SC(118, 33, 31, 3, no, no) \ 1940 SC(119, 33, 31, 4, no, no) \ 1941 \ 1942 SC(120, 34, 32, 1, no, no) \ 1943 SC(121, 34, 32, 2, no, no) \ 1944 SC(122, 34, 32, 3, no, no) \ 1945 SC(123, 34, 32, 4, no, no) \ 1946 \ 1947 SC(124, 35, 33, 1, no, no) \ 1948 SC(125, 35, 33, 2, no, no) \ 1949 SC(126, 35, 33, 3, no, no) \ 1950 SC(127, 35, 33, 4, no, no) \ 1951 \ 1952 SC(128, 36, 34, 1, no, no) \ 1953 SC(129, 36, 34, 2, no, no) \ 1954 SC(130, 36, 34, 3, no, no) \ 1955 SC(131, 36, 34, 4, no, no) \ 1956 \ 1957 SC(132, 37, 35, 1, no, no) \ 1958 SC(133, 37, 35, 2, no, no) \ 1959 SC(134, 37, 35, 3, no, no) \ 1960 SC(135, 37, 35, 4, no, no) \ 1961 \ 1962 SC(136, 38, 36, 1, no, no) \ 1963 SC(137, 38, 36, 2, no, no) \ 1964 SC(138, 38, 36, 3, no, no) \ 1965 SC(139, 38, 36, 4, no, no) \ 1966 \ 1967 SC(140, 39, 37, 1, no, no) \ 1968 SC(141, 39, 37, 2, no, no) \ 1969 SC(142, 39, 37, 3, no, no) \ 1970 SC(143, 39, 37, 4, no, no) \ 1971 \ 1972 SC(144, 40, 38, 1, no, no) \ 1973 SC(145, 40, 38, 2, no, no) \ 1974 SC(146, 40, 38, 3, no, no) \ 1975 SC(147, 40, 38, 4, no, no) \ 1976 \ 1977 SC(148, 41, 39, 1, no, no) \ 1978 SC(149, 41, 39, 2, no, no) \ 1979 SC(150, 41, 39, 3, no, no) \ 1980 SC(151, 41, 39, 4, no, no) \ 1981 \ 1982 SC(152, 42, 40, 1, no, no) \ 1983 SC(153, 42, 40, 2, no, no) \ 1984 SC(154, 42, 40, 3, no, no) \ 1985 SC(155, 42, 40, 4, no, no) \ 1986 \ 1987 SC(156, 43, 41, 1, no, no) \ 1988 SC(157, 43, 41, 2, no, no) \ 1989 SC(158, 43, 41, 3, no, no) \ 1990 SC(159, 43, 41, 4, no, no) \ 1991 \ 1992 SC(160, 44, 42, 1, no, no) \ 1993 SC(161, 44, 42, 2, no, no) \ 1994 SC(162, 44, 42, 3, no, no) \ 1995 SC(163, 44, 42, 4, no, no) \ 1996 \ 1997 SC(164, 45, 43, 1, no, no) \ 1998 SC(165, 45, 43, 2, no, no) \ 1999 SC(166, 45, 43, 3, no, no) \ 2000 SC(167, 45, 43, 4, no, no) \ 2001 \ 2002 SC(168, 46, 44, 1, no, no) \ 2003 SC(169, 46, 44, 2, no, no) \ 2004 SC(170, 46, 44, 3, no, no) \ 2005 SC(171, 46, 44, 4, no, no) \ 2006 \ 2007 SC(172, 47, 45, 1, no, no) \ 2008 SC(173, 47, 45, 2, no, no) \ 2009 SC(174, 47, 45, 3, no, no) \ 2010 SC(175, 47, 45, 4, no, no) \ 2011 \ 2012 SC(176, 48, 46, 1, no, no) \ 2013 SC(177, 48, 46, 2, no, no) \ 2014 SC(178, 48, 46, 3, no, no) \ 2015 SC(179, 48, 46, 4, no, no) \ 2016 \ 2017 SC(180, 49, 47, 1, no, no) \ 2018 SC(181, 49, 47, 2, no, no) \ 2019 SC(182, 49, 47, 3, no, no) \ 2020 SC(183, 49, 47, 4, no, no) \ 2021 \ 2022 SC(184, 50, 48, 1, no, no) \ 2023 SC(185, 50, 48, 2, no, no) \ 2024 SC(186, 50, 48, 3, no, no) \ 2025 SC(187, 50, 48, 4, no, no) \ 2026 \ 2027 SC(188, 51, 49, 1, no, no) \ 2028 SC(189, 51, 49, 2, no, no) \ 2029 SC(190, 51, 49, 3, no, no) \ 2030 SC(191, 51, 49, 4, no, no) \ 2031 \ 2032 SC(192, 52, 50, 1, no, no) \ 2033 SC(193, 52, 50, 2, no, no) \ 2034 SC(194, 52, 50, 3, no, no) \ 2035 SC(195, 52, 50, 4, no, no) \ 2036 \ 2037 SC(196, 53, 51, 1, no, no) \ 2038 SC(197, 53, 51, 2, no, no) \ 2039 SC(198, 53, 51, 3, no, no) \ 2040 SC(199, 53, 51, 4, no, no) \ 2041 \ 2042 SC(200, 54, 52, 1, no, no) \ 2043 SC(201, 54, 52, 2, no, no) \ 2044 SC(202, 54, 52, 3, no, no) \ 2045 SC(203, 54, 52, 4, no, no) \ 2046 \ 2047 SC(204, 55, 53, 1, no, no) \ 2048 SC(205, 55, 53, 2, no, no) \ 2049 SC(206, 55, 53, 3, no, no) \ 2050 SC(207, 55, 53, 4, no, no) \ 2051 \ 2052 SC(208, 56, 54, 1, no, no) \ 2053 SC(209, 56, 54, 2, no, no) \ 2054 SC(210, 56, 54, 3, no, no) \ 2055 SC(211, 56, 54, 4, no, no) \ 2056 \ 2057 SC(212, 57, 55, 1, no, no) \ 2058 SC(213, 57, 55, 2, no, no) \ 2059 SC(214, 57, 55, 3, no, no) \ 2060 SC(215, 57, 55, 4, no, no) \ 2061 \ 2062 SC(216, 58, 56, 1, no, no) \ 2063 SC(217, 58, 56, 2, no, no) \ 2064 SC(218, 58, 56, 3, no, no) \ 2065 SC(219, 58, 56, 4, no, no) \ 2066 \ 2067 SC(220, 59, 57, 1, no, no) \ 2068 SC(221, 59, 57, 2, no, no) \ 2069 SC(222, 59, 57, 3, no, no) \ 2070 SC(223, 59, 57, 4, no, no) \ 2071 \ 2072 SC(224, 60, 58, 1, no, no) \ 2073 SC(225, 60, 58, 2, no, no) \ 2074 SC(226, 60, 58, 3, no, no) \ 2075 SC(227, 60, 58, 4, no, no) \ 2076 \ 2077 SC(228, 61, 59, 1, no, no) \ 2078 SC(229, 61, 59, 2, no, no) \ 2079 SC(230, 61, 59, 3, no, no) \ 2080 SC(231, 61, 59, 4, no, no) \ 2081 \ 2082 SC(232, 62, 60, 1, no, no) \ 2083 SC(233, 62, 60, 2, no, no) \ 2084 SC(234, 62, 60, 3, no, no) \ 2085 2086#define SIZE_CLASSES_DEFINED 2087#define NTBINS 0 2088#define NLBINS 32 2089#define NBINS 39 2090#define NSIZES 235 2091#define LG_TINY_MAXCLASS "NA" 2092#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 2093#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 2094#define LG_LARGE_MINCLASS 14 2095#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 2096#endif 2097 2098#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 13) 2099#define SIZE_CLASSES \ 2100 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 2101 SC( 0, 3, 3, 0, yes, 3) \ 2102 SC( 1, 3, 3, 1, yes, 3) \ 2103 SC( 2, 3, 3, 2, yes, 3) \ 2104 SC( 3, 3, 3, 3, yes, 3) \ 2105 \ 2106 SC( 4, 5, 3, 1, yes, 3) \ 2107 SC( 5, 5, 3, 2, yes, 3) \ 2108 SC( 6, 5, 3, 3, yes, 3) \ 2109 SC( 7, 5, 3, 4, yes, 3) \ 2110 \ 2111 SC( 8, 6, 4, 1, yes, 4) \ 2112 SC( 9, 6, 4, 2, yes, 4) \ 2113 SC( 10, 6, 4, 3, yes, 4) \ 2114 SC( 11, 6, 4, 4, yes, 4) \ 2115 \ 2116 SC( 12, 7, 5, 1, yes, 5) \ 2117 SC( 13, 7, 5, 2, yes, 5) \ 2118 SC( 14, 7, 5, 3, yes, 5) \ 2119 SC( 15, 7, 5, 4, yes, 5) \ 2120 \ 2121 SC( 16, 8, 6, 1, yes, 6) \ 2122 SC( 17, 8, 6, 2, yes, 6) \ 2123 SC( 18, 8, 6, 3, yes, 6) \ 2124 SC( 19, 8, 6, 4, yes, 6) \ 2125 \ 2126 SC( 20, 9, 7, 1, yes, 7) \ 2127 SC( 21, 9, 7, 2, yes, 7) \ 2128 SC( 22, 9, 7, 3, yes, 7) \ 2129 SC( 23, 9, 7, 4, yes, 7) \ 2130 \ 2131 SC( 24, 10, 8, 1, yes, 8) \ 2132 SC( 25, 10, 8, 2, yes, 8) \ 2133 SC( 26, 10, 8, 3, yes, 8) \ 2134 SC( 27, 10, 8, 4, yes, 8) \ 2135 \ 2136 SC( 28, 11, 9, 1, yes, 9) \ 2137 SC( 29, 11, 9, 2, yes, 9) \ 2138 SC( 30, 11, 9, 3, yes, 9) \ 2139 SC( 31, 11, 9, 4, yes, 9) \ 2140 \ 2141 SC( 32, 12, 10, 1, yes, no) \ 2142 SC( 33, 12, 10, 2, yes, no) \ 2143 SC( 34, 12, 10, 3, yes, no) \ 2144 SC( 35, 12, 10, 4, yes, no) \ 2145 \ 2146 SC( 36, 13, 11, 1, yes, no) \ 2147 SC( 37, 13, 11, 2, yes, no) \ 2148 SC( 38, 13, 11, 3, yes, no) \ 2149 SC( 39, 13, 11, 4, yes, no) \ 2150 \ 2151 SC( 40, 14, 12, 1, yes, no) \ 2152 SC( 41, 14, 12, 2, yes, no) \ 2153 SC( 42, 14, 12, 3, yes, no) \ 2154 SC( 43, 14, 12, 4, no, no) \ 2155 \ 2156 SC( 44, 15, 13, 1, no, no) \ 2157 SC( 45, 15, 13, 2, no, no) \ 2158 SC( 46, 15, 13, 3, no, no) \ 2159 SC( 47, 15, 13, 4, no, no) \ 2160 \ 2161 SC( 48, 16, 14, 1, no, no) \ 2162 SC( 49, 16, 14, 2, no, no) \ 2163 SC( 50, 16, 14, 3, no, no) \ 2164 SC( 51, 16, 14, 4, no, no) \ 2165 \ 2166 SC( 52, 17, 15, 1, no, no) \ 2167 SC( 53, 17, 15, 2, no, no) \ 2168 SC( 54, 17, 15, 3, no, no) \ 2169 SC( 55, 17, 15, 4, no, no) \ 2170 \ 2171 SC( 56, 18, 16, 1, no, no) \ 2172 SC( 57, 18, 16, 2, no, no) \ 2173 SC( 58, 18, 16, 3, no, no) \ 2174 SC( 59, 18, 16, 4, no, no) \ 2175 \ 2176 SC( 60, 19, 17, 1, no, no) \ 2177 SC( 61, 19, 17, 2, no, no) \ 2178 SC( 62, 19, 17, 3, no, no) \ 2179 SC( 63, 19, 17, 4, no, no) \ 2180 \ 2181 SC( 64, 20, 18, 1, no, no) \ 2182 SC( 65, 20, 18, 2, no, no) \ 2183 SC( 66, 20, 18, 3, no, no) \ 2184 SC( 67, 20, 18, 4, no, no) \ 2185 \ 2186 SC( 68, 21, 19, 1, no, no) \ 2187 SC( 69, 21, 19, 2, no, no) \ 2188 SC( 70, 21, 19, 3, no, no) \ 2189 SC( 71, 21, 19, 4, no, no) \ 2190 \ 2191 SC( 72, 22, 20, 1, no, no) \ 2192 SC( 73, 22, 20, 2, no, no) \ 2193 SC( 74, 22, 20, 3, no, no) \ 2194 SC( 75, 22, 20, 4, no, no) \ 2195 \ 2196 SC( 76, 23, 21, 1, no, no) \ 2197 SC( 77, 23, 21, 2, no, no) \ 2198 SC( 78, 23, 21, 3, no, no) \ 2199 SC( 79, 23, 21, 4, no, no) \ 2200 \ 2201 SC( 80, 24, 22, 1, no, no) \ 2202 SC( 81, 24, 22, 2, no, no) \ 2203 SC( 82, 24, 22, 3, no, no) \ 2204 SC( 83, 24, 22, 4, no, no) \ 2205 \ 2206 SC( 84, 25, 23, 1, no, no) \ 2207 SC( 85, 25, 23, 2, no, no) \ 2208 SC( 86, 25, 23, 3, no, no) \ 2209 SC( 87, 25, 23, 4, no, no) \ 2210 \ 2211 SC( 88, 26, 24, 1, no, no) \ 2212 SC( 89, 26, 24, 2, no, no) \ 2213 SC( 90, 26, 24, 3, no, no) \ 2214 SC( 91, 26, 24, 4, no, no) \ 2215 \ 2216 SC( 92, 27, 25, 1, no, no) \ 2217 SC( 93, 27, 25, 2, no, no) \ 2218 SC( 94, 27, 25, 3, no, no) \ 2219 SC( 95, 27, 25, 4, no, no) \ 2220 \ 2221 SC( 96, 28, 26, 1, no, no) \ 2222 SC( 97, 28, 26, 2, no, no) \ 2223 SC( 98, 28, 26, 3, no, no) \ 2224 SC( 99, 28, 26, 4, no, no) \ 2225 \ 2226 SC(100, 29, 27, 1, no, no) \ 2227 SC(101, 29, 27, 2, no, no) \ 2228 SC(102, 29, 27, 3, no, no) \ 2229 SC(103, 29, 27, 4, no, no) \ 2230 \ 2231 SC(104, 30, 28, 1, no, no) \ 2232 SC(105, 30, 28, 2, no, no) \ 2233 SC(106, 30, 28, 3, no, no) \ 2234 SC(107, 30, 28, 4, no, no) \ 2235 \ 2236 SC(108, 31, 29, 1, no, no) \ 2237 SC(109, 31, 29, 2, no, no) \ 2238 SC(110, 31, 29, 3, no, no) \ 2239 SC(111, 31, 29, 4, no, no) \ 2240 \ 2241 SC(112, 32, 30, 1, no, no) \ 2242 SC(113, 32, 30, 2, no, no) \ 2243 SC(114, 32, 30, 3, no, no) \ 2244 SC(115, 32, 30, 4, no, no) \ 2245 \ 2246 SC(116, 33, 31, 1, no, no) \ 2247 SC(117, 33, 31, 2, no, no) \ 2248 SC(118, 33, 31, 3, no, no) \ 2249 SC(119, 33, 31, 4, no, no) \ 2250 \ 2251 SC(120, 34, 32, 1, no, no) \ 2252 SC(121, 34, 32, 2, no, no) \ 2253 SC(122, 34, 32, 3, no, no) \ 2254 SC(123, 34, 32, 4, no, no) \ 2255 \ 2256 SC(124, 35, 33, 1, no, no) \ 2257 SC(125, 35, 33, 2, no, no) \ 2258 SC(126, 35, 33, 3, no, no) \ 2259 SC(127, 35, 33, 4, no, no) \ 2260 \ 2261 SC(128, 36, 34, 1, no, no) \ 2262 SC(129, 36, 34, 2, no, no) \ 2263 SC(130, 36, 34, 3, no, no) \ 2264 SC(131, 36, 34, 4, no, no) \ 2265 \ 2266 SC(132, 37, 35, 1, no, no) \ 2267 SC(133, 37, 35, 2, no, no) \ 2268 SC(134, 37, 35, 3, no, no) \ 2269 SC(135, 37, 35, 4, no, no) \ 2270 \ 2271 SC(136, 38, 36, 1, no, no) \ 2272 SC(137, 38, 36, 2, no, no) \ 2273 SC(138, 38, 36, 3, no, no) \ 2274 SC(139, 38, 36, 4, no, no) \ 2275 \ 2276 SC(140, 39, 37, 1, no, no) \ 2277 SC(141, 39, 37, 2, no, no) \ 2278 SC(142, 39, 37, 3, no, no) \ 2279 SC(143, 39, 37, 4, no, no) \ 2280 \ 2281 SC(144, 40, 38, 1, no, no) \ 2282 SC(145, 40, 38, 2, no, no) \ 2283 SC(146, 40, 38, 3, no, no) \ 2284 SC(147, 40, 38, 4, no, no) \ 2285 \ 2286 SC(148, 41, 39, 1, no, no) \ 2287 SC(149, 41, 39, 2, no, no) \ 2288 SC(150, 41, 39, 3, no, no) \ 2289 SC(151, 41, 39, 4, no, no) \ 2290 \ 2291 SC(152, 42, 40, 1, no, no) \ 2292 SC(153, 42, 40, 2, no, no) \ 2293 SC(154, 42, 40, 3, no, no) \ 2294 SC(155, 42, 40, 4, no, no) \ 2295 \ 2296 SC(156, 43, 41, 1, no, no) \ 2297 SC(157, 43, 41, 2, no, no) \ 2298 SC(158, 43, 41, 3, no, no) \ 2299 SC(159, 43, 41, 4, no, no) \ 2300 \ 2301 SC(160, 44, 42, 1, no, no) \ 2302 SC(161, 44, 42, 2, no, no) \ 2303 SC(162, 44, 42, 3, no, no) \ 2304 SC(163, 44, 42, 4, no, no) \ 2305 \ 2306 SC(164, 45, 43, 1, no, no) \ 2307 SC(165, 45, 43, 2, no, no) \ 2308 SC(166, 45, 43, 3, no, no) \ 2309 SC(167, 45, 43, 4, no, no) \ 2310 \ 2311 SC(168, 46, 44, 1, no, no) \ 2312 SC(169, 46, 44, 2, no, no) \ 2313 SC(170, 46, 44, 3, no, no) \ 2314 SC(171, 46, 44, 4, no, no) \ 2315 \ 2316 SC(172, 47, 45, 1, no, no) \ 2317 SC(173, 47, 45, 2, no, no) \ 2318 SC(174, 47, 45, 3, no, no) \ 2319 SC(175, 47, 45, 4, no, no) \ 2320 \ 2321 SC(176, 48, 46, 1, no, no) \ 2322 SC(177, 48, 46, 2, no, no) \ 2323 SC(178, 48, 46, 3, no, no) \ 2324 SC(179, 48, 46, 4, no, no) \ 2325 \ 2326 SC(180, 49, 47, 1, no, no) \ 2327 SC(181, 49, 47, 2, no, no) \ 2328 SC(182, 49, 47, 3, no, no) \ 2329 SC(183, 49, 47, 4, no, no) \ 2330 \ 2331 SC(184, 50, 48, 1, no, no) \ 2332 SC(185, 50, 48, 2, no, no) \ 2333 SC(186, 50, 48, 3, no, no) \ 2334 SC(187, 50, 48, 4, no, no) \ 2335 \ 2336 SC(188, 51, 49, 1, no, no) \ 2337 SC(189, 51, 49, 2, no, no) \ 2338 SC(190, 51, 49, 3, no, no) \ 2339 SC(191, 51, 49, 4, no, no) \ 2340 \ 2341 SC(192, 52, 50, 1, no, no) \ 2342 SC(193, 52, 50, 2, no, no) \ 2343 SC(194, 52, 50, 3, no, no) \ 2344 SC(195, 52, 50, 4, no, no) \ 2345 \ 2346 SC(196, 53, 51, 1, no, no) \ 2347 SC(197, 53, 51, 2, no, no) \ 2348 SC(198, 53, 51, 3, no, no) \ 2349 SC(199, 53, 51, 4, no, no) \ 2350 \ 2351 SC(200, 54, 52, 1, no, no) \ 2352 SC(201, 54, 52, 2, no, no) \ 2353 SC(202, 54, 52, 3, no, no) \ 2354 SC(203, 54, 52, 4, no, no) \ 2355 \ 2356 SC(204, 55, 53, 1, no, no) \ 2357 SC(205, 55, 53, 2, no, no) \ 2358 SC(206, 55, 53, 3, no, no) \ 2359 SC(207, 55, 53, 4, no, no) \ 2360 \ 2361 SC(208, 56, 54, 1, no, no) \ 2362 SC(209, 56, 54, 2, no, no) \ 2363 SC(210, 56, 54, 3, no, no) \ 2364 SC(211, 56, 54, 4, no, no) \ 2365 \ 2366 SC(212, 57, 55, 1, no, no) \ 2367 SC(213, 57, 55, 2, no, no) \ 2368 SC(214, 57, 55, 3, no, no) \ 2369 SC(215, 57, 55, 4, no, no) \ 2370 \ 2371 SC(216, 58, 56, 1, no, no) \ 2372 SC(217, 58, 56, 2, no, no) \ 2373 SC(218, 58, 56, 3, no, no) \ 2374 SC(219, 58, 56, 4, no, no) \ 2375 \ 2376 SC(220, 59, 57, 1, no, no) \ 2377 SC(221, 59, 57, 2, no, no) \ 2378 SC(222, 59, 57, 3, no, no) \ 2379 SC(223, 59, 57, 4, no, no) \ 2380 \ 2381 SC(224, 60, 58, 1, no, no) \ 2382 SC(225, 60, 58, 2, no, no) \ 2383 SC(226, 60, 58, 3, no, no) \ 2384 SC(227, 60, 58, 4, no, no) \ 2385 \ 2386 SC(228, 61, 59, 1, no, no) \ 2387 SC(229, 61, 59, 2, no, no) \ 2388 SC(230, 61, 59, 3, no, no) \ 2389 SC(231, 61, 59, 4, no, no) \ 2390 \ 2391 SC(232, 62, 60, 1, no, no) \ 2392 SC(233, 62, 60, 2, no, no) \ 2393 SC(234, 62, 60, 3, no, no) \ 2394 2395#define SIZE_CLASSES_DEFINED 2396#define NTBINS 0 2397#define NLBINS 32 2398#define NBINS 43 2399#define NSIZES 235 2400#define LG_TINY_MAXCLASS "NA" 2401#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 2402#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 2403#define LG_LARGE_MINCLASS 15 2404#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 2405#endif 2406 2407#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 14) 2408#define SIZE_CLASSES \ 2409 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 2410 SC( 0, 3, 3, 0, yes, 3) \ 2411 SC( 1, 3, 3, 1, yes, 3) \ 2412 SC( 2, 3, 3, 2, yes, 3) \ 2413 SC( 3, 3, 3, 3, yes, 3) \ 2414 \ 2415 SC( 4, 5, 3, 1, yes, 3) \ 2416 SC( 5, 5, 3, 2, yes, 3) \ 2417 SC( 6, 5, 3, 3, yes, 3) \ 2418 SC( 7, 5, 3, 4, yes, 3) \ 2419 \ 2420 SC( 8, 6, 4, 1, yes, 4) \ 2421 SC( 9, 6, 4, 2, yes, 4) \ 2422 SC( 10, 6, 4, 3, yes, 4) \ 2423 SC( 11, 6, 4, 4, yes, 4) \ 2424 \ 2425 SC( 12, 7, 5, 1, yes, 5) \ 2426 SC( 13, 7, 5, 2, yes, 5) \ 2427 SC( 14, 7, 5, 3, yes, 5) \ 2428 SC( 15, 7, 5, 4, yes, 5) \ 2429 \ 2430 SC( 16, 8, 6, 1, yes, 6) \ 2431 SC( 17, 8, 6, 2, yes, 6) \ 2432 SC( 18, 8, 6, 3, yes, 6) \ 2433 SC( 19, 8, 6, 4, yes, 6) \ 2434 \ 2435 SC( 20, 9, 7, 1, yes, 7) \ 2436 SC( 21, 9, 7, 2, yes, 7) \ 2437 SC( 22, 9, 7, 3, yes, 7) \ 2438 SC( 23, 9, 7, 4, yes, 7) \ 2439 \ 2440 SC( 24, 10, 8, 1, yes, 8) \ 2441 SC( 25, 10, 8, 2, yes, 8) \ 2442 SC( 26, 10, 8, 3, yes, 8) \ 2443 SC( 27, 10, 8, 4, yes, 8) \ 2444 \ 2445 SC( 28, 11, 9, 1, yes, 9) \ 2446 SC( 29, 11, 9, 2, yes, 9) \ 2447 SC( 30, 11, 9, 3, yes, 9) \ 2448 SC( 31, 11, 9, 4, yes, 9) \ 2449 \ 2450 SC( 32, 12, 10, 1, yes, no) \ 2451 SC( 33, 12, 10, 2, yes, no) \ 2452 SC( 34, 12, 10, 3, yes, no) \ 2453 SC( 35, 12, 10, 4, yes, no) \ 2454 \ 2455 SC( 36, 13, 11, 1, yes, no) \ 2456 SC( 37, 13, 11, 2, yes, no) \ 2457 SC( 38, 13, 11, 3, yes, no) \ 2458 SC( 39, 13, 11, 4, yes, no) \ 2459 \ 2460 SC( 40, 14, 12, 1, yes, no) \ 2461 SC( 41, 14, 12, 2, yes, no) \ 2462 SC( 42, 14, 12, 3, yes, no) \ 2463 SC( 43, 14, 12, 4, yes, no) \ 2464 \ 2465 SC( 44, 15, 13, 1, yes, no) \ 2466 SC( 45, 15, 13, 2, yes, no) \ 2467 SC( 46, 15, 13, 3, yes, no) \ 2468 SC( 47, 15, 13, 4, no, no) \ 2469 \ 2470 SC( 48, 16, 14, 1, no, no) \ 2471 SC( 49, 16, 14, 2, no, no) \ 2472 SC( 50, 16, 14, 3, no, no) \ 2473 SC( 51, 16, 14, 4, no, no) \ 2474 \ 2475 SC( 52, 17, 15, 1, no, no) \ 2476 SC( 53, 17, 15, 2, no, no) \ 2477 SC( 54, 17, 15, 3, no, no) \ 2478 SC( 55, 17, 15, 4, no, no) \ 2479 \ 2480 SC( 56, 18, 16, 1, no, no) \ 2481 SC( 57, 18, 16, 2, no, no) \ 2482 SC( 58, 18, 16, 3, no, no) \ 2483 SC( 59, 18, 16, 4, no, no) \ 2484 \ 2485 SC( 60, 19, 17, 1, no, no) \ 2486 SC( 61, 19, 17, 2, no, no) \ 2487 SC( 62, 19, 17, 3, no, no) \ 2488 SC( 63, 19, 17, 4, no, no) \ 2489 \ 2490 SC( 64, 20, 18, 1, no, no) \ 2491 SC( 65, 20, 18, 2, no, no) \ 2492 SC( 66, 20, 18, 3, no, no) \ 2493 SC( 67, 20, 18, 4, no, no) \ 2494 \ 2495 SC( 68, 21, 19, 1, no, no) \ 2496 SC( 69, 21, 19, 2, no, no) \ 2497 SC( 70, 21, 19, 3, no, no) \ 2498 SC( 71, 21, 19, 4, no, no) \ 2499 \ 2500 SC( 72, 22, 20, 1, no, no) \ 2501 SC( 73, 22, 20, 2, no, no) \ 2502 SC( 74, 22, 20, 3, no, no) \ 2503 SC( 75, 22, 20, 4, no, no) \ 2504 \ 2505 SC( 76, 23, 21, 1, no, no) \ 2506 SC( 77, 23, 21, 2, no, no) \ 2507 SC( 78, 23, 21, 3, no, no) \ 2508 SC( 79, 23, 21, 4, no, no) \ 2509 \ 2510 SC( 80, 24, 22, 1, no, no) \ 2511 SC( 81, 24, 22, 2, no, no) \ 2512 SC( 82, 24, 22, 3, no, no) \ 2513 SC( 83, 24, 22, 4, no, no) \ 2514 \ 2515 SC( 84, 25, 23, 1, no, no) \ 2516 SC( 85, 25, 23, 2, no, no) \ 2517 SC( 86, 25, 23, 3, no, no) \ 2518 SC( 87, 25, 23, 4, no, no) \ 2519 \ 2520 SC( 88, 26, 24, 1, no, no) \ 2521 SC( 89, 26, 24, 2, no, no) \ 2522 SC( 90, 26, 24, 3, no, no) \ 2523 SC( 91, 26, 24, 4, no, no) \ 2524 \ 2525 SC( 92, 27, 25, 1, no, no) \ 2526 SC( 93, 27, 25, 2, no, no) \ 2527 SC( 94, 27, 25, 3, no, no) \ 2528 SC( 95, 27, 25, 4, no, no) \ 2529 \ 2530 SC( 96, 28, 26, 1, no, no) \ 2531 SC( 97, 28, 26, 2, no, no) \ 2532 SC( 98, 28, 26, 3, no, no) \ 2533 SC( 99, 28, 26, 4, no, no) \ 2534 \ 2535 SC(100, 29, 27, 1, no, no) \ 2536 SC(101, 29, 27, 2, no, no) \ 2537 SC(102, 29, 27, 3, no, no) \ 2538 SC(103, 29, 27, 4, no, no) \ 2539 \ 2540 SC(104, 30, 28, 1, no, no) \ 2541 SC(105, 30, 28, 2, no, no) \ 2542 SC(106, 30, 28, 3, no, no) \ 2543 SC(107, 30, 28, 4, no, no) \ 2544 \ 2545 SC(108, 31, 29, 1, no, no) \ 2546 SC(109, 31, 29, 2, no, no) \ 2547 SC(110, 31, 29, 3, no, no) \ 2548 SC(111, 31, 29, 4, no, no) \ 2549 \ 2550 SC(112, 32, 30, 1, no, no) \ 2551 SC(113, 32, 30, 2, no, no) \ 2552 SC(114, 32, 30, 3, no, no) \ 2553 SC(115, 32, 30, 4, no, no) \ 2554 \ 2555 SC(116, 33, 31, 1, no, no) \ 2556 SC(117, 33, 31, 2, no, no) \ 2557 SC(118, 33, 31, 3, no, no) \ 2558 SC(119, 33, 31, 4, no, no) \ 2559 \ 2560 SC(120, 34, 32, 1, no, no) \ 2561 SC(121, 34, 32, 2, no, no) \ 2562 SC(122, 34, 32, 3, no, no) \ 2563 SC(123, 34, 32, 4, no, no) \ 2564 \ 2565 SC(124, 35, 33, 1, no, no) \ 2566 SC(125, 35, 33, 2, no, no) \ 2567 SC(126, 35, 33, 3, no, no) \ 2568 SC(127, 35, 33, 4, no, no) \ 2569 \ 2570 SC(128, 36, 34, 1, no, no) \ 2571 SC(129, 36, 34, 2, no, no) \ 2572 SC(130, 36, 34, 3, no, no) \ 2573 SC(131, 36, 34, 4, no, no) \ 2574 \ 2575 SC(132, 37, 35, 1, no, no) \ 2576 SC(133, 37, 35, 2, no, no) \ 2577 SC(134, 37, 35, 3, no, no) \ 2578 SC(135, 37, 35, 4, no, no) \ 2579 \ 2580 SC(136, 38, 36, 1, no, no) \ 2581 SC(137, 38, 36, 2, no, no) \ 2582 SC(138, 38, 36, 3, no, no) \ 2583 SC(139, 38, 36, 4, no, no) \ 2584 \ 2585 SC(140, 39, 37, 1, no, no) \ 2586 SC(141, 39, 37, 2, no, no) \ 2587 SC(142, 39, 37, 3, no, no) \ 2588 SC(143, 39, 37, 4, no, no) \ 2589 \ 2590 SC(144, 40, 38, 1, no, no) \ 2591 SC(145, 40, 38, 2, no, no) \ 2592 SC(146, 40, 38, 3, no, no) \ 2593 SC(147, 40, 38, 4, no, no) \ 2594 \ 2595 SC(148, 41, 39, 1, no, no) \ 2596 SC(149, 41, 39, 2, no, no) \ 2597 SC(150, 41, 39, 3, no, no) \ 2598 SC(151, 41, 39, 4, no, no) \ 2599 \ 2600 SC(152, 42, 40, 1, no, no) \ 2601 SC(153, 42, 40, 2, no, no) \ 2602 SC(154, 42, 40, 3, no, no) \ 2603 SC(155, 42, 40, 4, no, no) \ 2604 \ 2605 SC(156, 43, 41, 1, no, no) \ 2606 SC(157, 43, 41, 2, no, no) \ 2607 SC(158, 43, 41, 3, no, no) \ 2608 SC(159, 43, 41, 4, no, no) \ 2609 \ 2610 SC(160, 44, 42, 1, no, no) \ 2611 SC(161, 44, 42, 2, no, no) \ 2612 SC(162, 44, 42, 3, no, no) \ 2613 SC(163, 44, 42, 4, no, no) \ 2614 \ 2615 SC(164, 45, 43, 1, no, no) \ 2616 SC(165, 45, 43, 2, no, no) \ 2617 SC(166, 45, 43, 3, no, no) \ 2618 SC(167, 45, 43, 4, no, no) \ 2619 \ 2620 SC(168, 46, 44, 1, no, no) \ 2621 SC(169, 46, 44, 2, no, no) \ 2622 SC(170, 46, 44, 3, no, no) \ 2623 SC(171, 46, 44, 4, no, no) \ 2624 \ 2625 SC(172, 47, 45, 1, no, no) \ 2626 SC(173, 47, 45, 2, no, no) \ 2627 SC(174, 47, 45, 3, no, no) \ 2628 SC(175, 47, 45, 4, no, no) \ 2629 \ 2630 SC(176, 48, 46, 1, no, no) \ 2631 SC(177, 48, 46, 2, no, no) \ 2632 SC(178, 48, 46, 3, no, no) \ 2633 SC(179, 48, 46, 4, no, no) \ 2634 \ 2635 SC(180, 49, 47, 1, no, no) \ 2636 SC(181, 49, 47, 2, no, no) \ 2637 SC(182, 49, 47, 3, no, no) \ 2638 SC(183, 49, 47, 4, no, no) \ 2639 \ 2640 SC(184, 50, 48, 1, no, no) \ 2641 SC(185, 50, 48, 2, no, no) \ 2642 SC(186, 50, 48, 3, no, no) \ 2643 SC(187, 50, 48, 4, no, no) \ 2644 \ 2645 SC(188, 51, 49, 1, no, no) \ 2646 SC(189, 51, 49, 2, no, no) \ 2647 SC(190, 51, 49, 3, no, no) \ 2648 SC(191, 51, 49, 4, no, no) \ 2649 \ 2650 SC(192, 52, 50, 1, no, no) \ 2651 SC(193, 52, 50, 2, no, no) \ 2652 SC(194, 52, 50, 3, no, no) \ 2653 SC(195, 52, 50, 4, no, no) \ 2654 \ 2655 SC(196, 53, 51, 1, no, no) \ 2656 SC(197, 53, 51, 2, no, no) \ 2657 SC(198, 53, 51, 3, no, no) \ 2658 SC(199, 53, 51, 4, no, no) \ 2659 \ 2660 SC(200, 54, 52, 1, no, no) \ 2661 SC(201, 54, 52, 2, no, no) \ 2662 SC(202, 54, 52, 3, no, no) \ 2663 SC(203, 54, 52, 4, no, no) \ 2664 \ 2665 SC(204, 55, 53, 1, no, no) \ 2666 SC(205, 55, 53, 2, no, no) \ 2667 SC(206, 55, 53, 3, no, no) \ 2668 SC(207, 55, 53, 4, no, no) \ 2669 \ 2670 SC(208, 56, 54, 1, no, no) \ 2671 SC(209, 56, 54, 2, no, no) \ 2672 SC(210, 56, 54, 3, no, no) \ 2673 SC(211, 56, 54, 4, no, no) \ 2674 \ 2675 SC(212, 57, 55, 1, no, no) \ 2676 SC(213, 57, 55, 2, no, no) \ 2677 SC(214, 57, 55, 3, no, no) \ 2678 SC(215, 57, 55, 4, no, no) \ 2679 \ 2680 SC(216, 58, 56, 1, no, no) \ 2681 SC(217, 58, 56, 2, no, no) \ 2682 SC(218, 58, 56, 3, no, no) \ 2683 SC(219, 58, 56, 4, no, no) \ 2684 \ 2685 SC(220, 59, 57, 1, no, no) \ 2686 SC(221, 59, 57, 2, no, no) \ 2687 SC(222, 59, 57, 3, no, no) \ 2688 SC(223, 59, 57, 4, no, no) \ 2689 \ 2690 SC(224, 60, 58, 1, no, no) \ 2691 SC(225, 60, 58, 2, no, no) \ 2692 SC(226, 60, 58, 3, no, no) \ 2693 SC(227, 60, 58, 4, no, no) \ 2694 \ 2695 SC(228, 61, 59, 1, no, no) \ 2696 SC(229, 61, 59, 2, no, no) \ 2697 SC(230, 61, 59, 3, no, no) \ 2698 SC(231, 61, 59, 4, no, no) \ 2699 \ 2700 SC(232, 62, 60, 1, no, no) \ 2701 SC(233, 62, 60, 2, no, no) \ 2702 SC(234, 62, 60, 3, no, no) \ 2703 2704#define SIZE_CLASSES_DEFINED 2705#define NTBINS 0 2706#define NLBINS 32 2707#define NBINS 47 2708#define NSIZES 235 2709#define LG_TINY_MAXCLASS "NA" 2710#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 2711#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 2712#define LG_LARGE_MINCLASS 16 2713#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 2714#endif 2715 2716#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 16) 2717#define SIZE_CLASSES \ 2718 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 2719 SC( 0, 3, 3, 0, yes, 3) \ 2720 SC( 1, 3, 3, 1, yes, 3) \ 2721 SC( 2, 3, 3, 2, yes, 3) \ 2722 SC( 3, 3, 3, 3, yes, 3) \ 2723 \ 2724 SC( 4, 5, 3, 1, yes, 3) \ 2725 SC( 5, 5, 3, 2, yes, 3) \ 2726 SC( 6, 5, 3, 3, yes, 3) \ 2727 SC( 7, 5, 3, 4, yes, 3) \ 2728 \ 2729 SC( 8, 6, 4, 1, yes, 4) \ 2730 SC( 9, 6, 4, 2, yes, 4) \ 2731 SC( 10, 6, 4, 3, yes, 4) \ 2732 SC( 11, 6, 4, 4, yes, 4) \ 2733 \ 2734 SC( 12, 7, 5, 1, yes, 5) \ 2735 SC( 13, 7, 5, 2, yes, 5) \ 2736 SC( 14, 7, 5, 3, yes, 5) \ 2737 SC( 15, 7, 5, 4, yes, 5) \ 2738 \ 2739 SC( 16, 8, 6, 1, yes, 6) \ 2740 SC( 17, 8, 6, 2, yes, 6) \ 2741 SC( 18, 8, 6, 3, yes, 6) \ 2742 SC( 19, 8, 6, 4, yes, 6) \ 2743 \ 2744 SC( 20, 9, 7, 1, yes, 7) \ 2745 SC( 21, 9, 7, 2, yes, 7) \ 2746 SC( 22, 9, 7, 3, yes, 7) \ 2747 SC( 23, 9, 7, 4, yes, 7) \ 2748 \ 2749 SC( 24, 10, 8, 1, yes, 8) \ 2750 SC( 25, 10, 8, 2, yes, 8) \ 2751 SC( 26, 10, 8, 3, yes, 8) \ 2752 SC( 27, 10, 8, 4, yes, 8) \ 2753 \ 2754 SC( 28, 11, 9, 1, yes, 9) \ 2755 SC( 29, 11, 9, 2, yes, 9) \ 2756 SC( 30, 11, 9, 3, yes, 9) \ 2757 SC( 31, 11, 9, 4, yes, 9) \ 2758 \ 2759 SC( 32, 12, 10, 1, yes, no) \ 2760 SC( 33, 12, 10, 2, yes, no) \ 2761 SC( 34, 12, 10, 3, yes, no) \ 2762 SC( 35, 12, 10, 4, yes, no) \ 2763 \ 2764 SC( 36, 13, 11, 1, yes, no) \ 2765 SC( 37, 13, 11, 2, yes, no) \ 2766 SC( 38, 13, 11, 3, yes, no) \ 2767 SC( 39, 13, 11, 4, yes, no) \ 2768 \ 2769 SC( 40, 14, 12, 1, yes, no) \ 2770 SC( 41, 14, 12, 2, yes, no) \ 2771 SC( 42, 14, 12, 3, yes, no) \ 2772 SC( 43, 14, 12, 4, yes, no) \ 2773 \ 2774 SC( 44, 15, 13, 1, yes, no) \ 2775 SC( 45, 15, 13, 2, yes, no) \ 2776 SC( 46, 15, 13, 3, yes, no) \ 2777 SC( 47, 15, 13, 4, yes, no) \ 2778 \ 2779 SC( 48, 16, 14, 1, yes, no) \ 2780 SC( 49, 16, 14, 2, yes, no) \ 2781 SC( 50, 16, 14, 3, yes, no) \ 2782 SC( 51, 16, 14, 4, yes, no) \ 2783 \ 2784 SC( 52, 17, 15, 1, yes, no) \ 2785 SC( 53, 17, 15, 2, yes, no) \ 2786 SC( 54, 17, 15, 3, yes, no) \ 2787 SC( 55, 17, 15, 4, no, no) \ 2788 \ 2789 SC( 56, 18, 16, 1, no, no) \ 2790 SC( 57, 18, 16, 2, no, no) \ 2791 SC( 58, 18, 16, 3, no, no) \ 2792 SC( 59, 18, 16, 4, no, no) \ 2793 \ 2794 SC( 60, 19, 17, 1, no, no) \ 2795 SC( 61, 19, 17, 2, no, no) \ 2796 SC( 62, 19, 17, 3, no, no) \ 2797 SC( 63, 19, 17, 4, no, no) \ 2798 \ 2799 SC( 64, 20, 18, 1, no, no) \ 2800 SC( 65, 20, 18, 2, no, no) \ 2801 SC( 66, 20, 18, 3, no, no) \ 2802 SC( 67, 20, 18, 4, no, no) \ 2803 \ 2804 SC( 68, 21, 19, 1, no, no) \ 2805 SC( 69, 21, 19, 2, no, no) \ 2806 SC( 70, 21, 19, 3, no, no) \ 2807 SC( 71, 21, 19, 4, no, no) \ 2808 \ 2809 SC( 72, 22, 20, 1, no, no) \ 2810 SC( 73, 22, 20, 2, no, no) \ 2811 SC( 74, 22, 20, 3, no, no) \ 2812 SC( 75, 22, 20, 4, no, no) \ 2813 \ 2814 SC( 76, 23, 21, 1, no, no) \ 2815 SC( 77, 23, 21, 2, no, no) \ 2816 SC( 78, 23, 21, 3, no, no) \ 2817 SC( 79, 23, 21, 4, no, no) \ 2818 \ 2819 SC( 80, 24, 22, 1, no, no) \ 2820 SC( 81, 24, 22, 2, no, no) \ 2821 SC( 82, 24, 22, 3, no, no) \ 2822 SC( 83, 24, 22, 4, no, no) \ 2823 \ 2824 SC( 84, 25, 23, 1, no, no) \ 2825 SC( 85, 25, 23, 2, no, no) \ 2826 SC( 86, 25, 23, 3, no, no) \ 2827 SC( 87, 25, 23, 4, no, no) \ 2828 \ 2829 SC( 88, 26, 24, 1, no, no) \ 2830 SC( 89, 26, 24, 2, no, no) \ 2831 SC( 90, 26, 24, 3, no, no) \ 2832 SC( 91, 26, 24, 4, no, no) \ 2833 \ 2834 SC( 92, 27, 25, 1, no, no) \ 2835 SC( 93, 27, 25, 2, no, no) \ 2836 SC( 94, 27, 25, 3, no, no) \ 2837 SC( 95, 27, 25, 4, no, no) \ 2838 \ 2839 SC( 96, 28, 26, 1, no, no) \ 2840 SC( 97, 28, 26, 2, no, no) \ 2841 SC( 98, 28, 26, 3, no, no) \ 2842 SC( 99, 28, 26, 4, no, no) \ 2843 \ 2844 SC(100, 29, 27, 1, no, no) \ 2845 SC(101, 29, 27, 2, no, no) \ 2846 SC(102, 29, 27, 3, no, no) \ 2847 SC(103, 29, 27, 4, no, no) \ 2848 \ 2849 SC(104, 30, 28, 1, no, no) \ 2850 SC(105, 30, 28, 2, no, no) \ 2851 SC(106, 30, 28, 3, no, no) \ 2852 SC(107, 30, 28, 4, no, no) \ 2853 \ 2854 SC(108, 31, 29, 1, no, no) \ 2855 SC(109, 31, 29, 2, no, no) \ 2856 SC(110, 31, 29, 3, no, no) \ 2857 SC(111, 31, 29, 4, no, no) \ 2858 \ 2859 SC(112, 32, 30, 1, no, no) \ 2860 SC(113, 32, 30, 2, no, no) \ 2861 SC(114, 32, 30, 3, no, no) \ 2862 SC(115, 32, 30, 4, no, no) \ 2863 \ 2864 SC(116, 33, 31, 1, no, no) \ 2865 SC(117, 33, 31, 2, no, no) \ 2866 SC(118, 33, 31, 3, no, no) \ 2867 SC(119, 33, 31, 4, no, no) \ 2868 \ 2869 SC(120, 34, 32, 1, no, no) \ 2870 SC(121, 34, 32, 2, no, no) \ 2871 SC(122, 34, 32, 3, no, no) \ 2872 SC(123, 34, 32, 4, no, no) \ 2873 \ 2874 SC(124, 35, 33, 1, no, no) \ 2875 SC(125, 35, 33, 2, no, no) \ 2876 SC(126, 35, 33, 3, no, no) \ 2877 SC(127, 35, 33, 4, no, no) \ 2878 \ 2879 SC(128, 36, 34, 1, no, no) \ 2880 SC(129, 36, 34, 2, no, no) \ 2881 SC(130, 36, 34, 3, no, no) \ 2882 SC(131, 36, 34, 4, no, no) \ 2883 \ 2884 SC(132, 37, 35, 1, no, no) \ 2885 SC(133, 37, 35, 2, no, no) \ 2886 SC(134, 37, 35, 3, no, no) \ 2887 SC(135, 37, 35, 4, no, no) \ 2888 \ 2889 SC(136, 38, 36, 1, no, no) \ 2890 SC(137, 38, 36, 2, no, no) \ 2891 SC(138, 38, 36, 3, no, no) \ 2892 SC(139, 38, 36, 4, no, no) \ 2893 \ 2894 SC(140, 39, 37, 1, no, no) \ 2895 SC(141, 39, 37, 2, no, no) \ 2896 SC(142, 39, 37, 3, no, no) \ 2897 SC(143, 39, 37, 4, no, no) \ 2898 \ 2899 SC(144, 40, 38, 1, no, no) \ 2900 SC(145, 40, 38, 2, no, no) \ 2901 SC(146, 40, 38, 3, no, no) \ 2902 SC(147, 40, 38, 4, no, no) \ 2903 \ 2904 SC(148, 41, 39, 1, no, no) \ 2905 SC(149, 41, 39, 2, no, no) \ 2906 SC(150, 41, 39, 3, no, no) \ 2907 SC(151, 41, 39, 4, no, no) \ 2908 \ 2909 SC(152, 42, 40, 1, no, no) \ 2910 SC(153, 42, 40, 2, no, no) \ 2911 SC(154, 42, 40, 3, no, no) \ 2912 SC(155, 42, 40, 4, no, no) \ 2913 \ 2914 SC(156, 43, 41, 1, no, no) \ 2915 SC(157, 43, 41, 2, no, no) \ 2916 SC(158, 43, 41, 3, no, no) \ 2917 SC(159, 43, 41, 4, no, no) \ 2918 \ 2919 SC(160, 44, 42, 1, no, no) \ 2920 SC(161, 44, 42, 2, no, no) \ 2921 SC(162, 44, 42, 3, no, no) \ 2922 SC(163, 44, 42, 4, no, no) \ 2923 \ 2924 SC(164, 45, 43, 1, no, no) \ 2925 SC(165, 45, 43, 2, no, no) \ 2926 SC(166, 45, 43, 3, no, no) \ 2927 SC(167, 45, 43, 4, no, no) \ 2928 \ 2929 SC(168, 46, 44, 1, no, no) \ 2930 SC(169, 46, 44, 2, no, no) \ 2931 SC(170, 46, 44, 3, no, no) \ 2932 SC(171, 46, 44, 4, no, no) \ 2933 \ 2934 SC(172, 47, 45, 1, no, no) \ 2935 SC(173, 47, 45, 2, no, no) \ 2936 SC(174, 47, 45, 3, no, no) \ 2937 SC(175, 47, 45, 4, no, no) \ 2938 \ 2939 SC(176, 48, 46, 1, no, no) \ 2940 SC(177, 48, 46, 2, no, no) \ 2941 SC(178, 48, 46, 3, no, no) \ 2942 SC(179, 48, 46, 4, no, no) \ 2943 \ 2944 SC(180, 49, 47, 1, no, no) \ 2945 SC(181, 49, 47, 2, no, no) \ 2946 SC(182, 49, 47, 3, no, no) \ 2947 SC(183, 49, 47, 4, no, no) \ 2948 \ 2949 SC(184, 50, 48, 1, no, no) \ 2950 SC(185, 50, 48, 2, no, no) \ 2951 SC(186, 50, 48, 3, no, no) \ 2952 SC(187, 50, 48, 4, no, no) \ 2953 \ 2954 SC(188, 51, 49, 1, no, no) \ 2955 SC(189, 51, 49, 2, no, no) \ 2956 SC(190, 51, 49, 3, no, no) \ 2957 SC(191, 51, 49, 4, no, no) \ 2958 \ 2959 SC(192, 52, 50, 1, no, no) \ 2960 SC(193, 52, 50, 2, no, no) \ 2961 SC(194, 52, 50, 3, no, no) \ 2962 SC(195, 52, 50, 4, no, no) \ 2963 \ 2964 SC(196, 53, 51, 1, no, no) \ 2965 SC(197, 53, 51, 2, no, no) \ 2966 SC(198, 53, 51, 3, no, no) \ 2967 SC(199, 53, 51, 4, no, no) \ 2968 \ 2969 SC(200, 54, 52, 1, no, no) \ 2970 SC(201, 54, 52, 2, no, no) \ 2971 SC(202, 54, 52, 3, no, no) \ 2972 SC(203, 54, 52, 4, no, no) \ 2973 \ 2974 SC(204, 55, 53, 1, no, no) \ 2975 SC(205, 55, 53, 2, no, no) \ 2976 SC(206, 55, 53, 3, no, no) \ 2977 SC(207, 55, 53, 4, no, no) \ 2978 \ 2979 SC(208, 56, 54, 1, no, no) \ 2980 SC(209, 56, 54, 2, no, no) \ 2981 SC(210, 56, 54, 3, no, no) \ 2982 SC(211, 56, 54, 4, no, no) \ 2983 \ 2984 SC(212, 57, 55, 1, no, no) \ 2985 SC(213, 57, 55, 2, no, no) \ 2986 SC(214, 57, 55, 3, no, no) \ 2987 SC(215, 57, 55, 4, no, no) \ 2988 \ 2989 SC(216, 58, 56, 1, no, no) \ 2990 SC(217, 58, 56, 2, no, no) \ 2991 SC(218, 58, 56, 3, no, no) \ 2992 SC(219, 58, 56, 4, no, no) \ 2993 \ 2994 SC(220, 59, 57, 1, no, no) \ 2995 SC(221, 59, 57, 2, no, no) \ 2996 SC(222, 59, 57, 3, no, no) \ 2997 SC(223, 59, 57, 4, no, no) \ 2998 \ 2999 SC(224, 60, 58, 1, no, no) \ 3000 SC(225, 60, 58, 2, no, no) \ 3001 SC(226, 60, 58, 3, no, no) \ 3002 SC(227, 60, 58, 4, no, no) \ 3003 \ 3004 SC(228, 61, 59, 1, no, no) \ 3005 SC(229, 61, 59, 2, no, no) \ 3006 SC(230, 61, 59, 3, no, no) \ 3007 SC(231, 61, 59, 4, no, no) \ 3008 \ 3009 SC(232, 62, 60, 1, no, no) \ 3010 SC(233, 62, 60, 2, no, no) \ 3011 SC(234, 62, 60, 3, no, no) \ 3012 3013#define SIZE_CLASSES_DEFINED 3014#define NTBINS 0 3015#define NLBINS 32 3016#define NBINS 55 3017#define NSIZES 235 3018#define LG_TINY_MAXCLASS "NA" 3019#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 3020#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 3021#define LG_LARGE_MINCLASS 18 3022#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 3023#endif 3024 3025#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 12) 3026#define SIZE_CLASSES \ 3027 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 3028 SC( 0, 3, 3, 0, yes, 3) \ 3029 \ 3030 SC( 1, 3, 3, 1, yes, 3) \ 3031 SC( 2, 4, 4, 1, yes, 4) \ 3032 SC( 3, 4, 4, 2, yes, 4) \ 3033 SC( 4, 4, 4, 3, yes, 4) \ 3034 \ 3035 SC( 5, 6, 4, 1, yes, 4) \ 3036 SC( 6, 6, 4, 2, yes, 4) \ 3037 SC( 7, 6, 4, 3, yes, 4) \ 3038 SC( 8, 6, 4, 4, yes, 4) \ 3039 \ 3040 SC( 9, 7, 5, 1, yes, 5) \ 3041 SC( 10, 7, 5, 2, yes, 5) \ 3042 SC( 11, 7, 5, 3, yes, 5) \ 3043 SC( 12, 7, 5, 4, yes, 5) \ 3044 \ 3045 SC( 13, 8, 6, 1, yes, 6) \ 3046 SC( 14, 8, 6, 2, yes, 6) \ 3047 SC( 15, 8, 6, 3, yes, 6) \ 3048 SC( 16, 8, 6, 4, yes, 6) \ 3049 \ 3050 SC( 17, 9, 7, 1, yes, 7) \ 3051 SC( 18, 9, 7, 2, yes, 7) \ 3052 SC( 19, 9, 7, 3, yes, 7) \ 3053 SC( 20, 9, 7, 4, yes, 7) \ 3054 \ 3055 SC( 21, 10, 8, 1, yes, 8) \ 3056 SC( 22, 10, 8, 2, yes, 8) \ 3057 SC( 23, 10, 8, 3, yes, 8) \ 3058 SC( 24, 10, 8, 4, yes, 8) \ 3059 \ 3060 SC( 25, 11, 9, 1, yes, 9) \ 3061 SC( 26, 11, 9, 2, yes, 9) \ 3062 SC( 27, 11, 9, 3, yes, 9) \ 3063 SC( 28, 11, 9, 4, yes, 9) \ 3064 \ 3065 SC( 29, 12, 10, 1, yes, no) \ 3066 SC( 30, 12, 10, 2, yes, no) \ 3067 SC( 31, 12, 10, 3, yes, no) \ 3068 SC( 32, 12, 10, 4, yes, no) \ 3069 \ 3070 SC( 33, 13, 11, 1, yes, no) \ 3071 SC( 34, 13, 11, 2, yes, no) \ 3072 SC( 35, 13, 11, 3, yes, no) \ 3073 SC( 36, 13, 11, 4, no, no) \ 3074 \ 3075 SC( 37, 14, 12, 1, no, no) \ 3076 SC( 38, 14, 12, 2, no, no) \ 3077 SC( 39, 14, 12, 3, no, no) \ 3078 SC( 40, 14, 12, 4, no, no) \ 3079 \ 3080 SC( 41, 15, 13, 1, no, no) \ 3081 SC( 42, 15, 13, 2, no, no) \ 3082 SC( 43, 15, 13, 3, no, no) \ 3083 SC( 44, 15, 13, 4, no, no) \ 3084 \ 3085 SC( 45, 16, 14, 1, no, no) \ 3086 SC( 46, 16, 14, 2, no, no) \ 3087 SC( 47, 16, 14, 3, no, no) \ 3088 SC( 48, 16, 14, 4, no, no) \ 3089 \ 3090 SC( 49, 17, 15, 1, no, no) \ 3091 SC( 50, 17, 15, 2, no, no) \ 3092 SC( 51, 17, 15, 3, no, no) \ 3093 SC( 52, 17, 15, 4, no, no) \ 3094 \ 3095 SC( 53, 18, 16, 1, no, no) \ 3096 SC( 54, 18, 16, 2, no, no) \ 3097 SC( 55, 18, 16, 3, no, no) \ 3098 SC( 56, 18, 16, 4, no, no) \ 3099 \ 3100 SC( 57, 19, 17, 1, no, no) \ 3101 SC( 58, 19, 17, 2, no, no) \ 3102 SC( 59, 19, 17, 3, no, no) \ 3103 SC( 60, 19, 17, 4, no, no) \ 3104 \ 3105 SC( 61, 20, 18, 1, no, no) \ 3106 SC( 62, 20, 18, 2, no, no) \ 3107 SC( 63, 20, 18, 3, no, no) \ 3108 SC( 64, 20, 18, 4, no, no) \ 3109 \ 3110 SC( 65, 21, 19, 1, no, no) \ 3111 SC( 66, 21, 19, 2, no, no) \ 3112 SC( 67, 21, 19, 3, no, no) \ 3113 SC( 68, 21, 19, 4, no, no) \ 3114 \ 3115 SC( 69, 22, 20, 1, no, no) \ 3116 SC( 70, 22, 20, 2, no, no) \ 3117 SC( 71, 22, 20, 3, no, no) \ 3118 SC( 72, 22, 20, 4, no, no) \ 3119 \ 3120 SC( 73, 23, 21, 1, no, no) \ 3121 SC( 74, 23, 21, 2, no, no) \ 3122 SC( 75, 23, 21, 3, no, no) \ 3123 SC( 76, 23, 21, 4, no, no) \ 3124 \ 3125 SC( 77, 24, 22, 1, no, no) \ 3126 SC( 78, 24, 22, 2, no, no) \ 3127 SC( 79, 24, 22, 3, no, no) \ 3128 SC( 80, 24, 22, 4, no, no) \ 3129 \ 3130 SC( 81, 25, 23, 1, no, no) \ 3131 SC( 82, 25, 23, 2, no, no) \ 3132 SC( 83, 25, 23, 3, no, no) \ 3133 SC( 84, 25, 23, 4, no, no) \ 3134 \ 3135 SC( 85, 26, 24, 1, no, no) \ 3136 SC( 86, 26, 24, 2, no, no) \ 3137 SC( 87, 26, 24, 3, no, no) \ 3138 SC( 88, 26, 24, 4, no, no) \ 3139 \ 3140 SC( 89, 27, 25, 1, no, no) \ 3141 SC( 90, 27, 25, 2, no, no) \ 3142 SC( 91, 27, 25, 3, no, no) \ 3143 SC( 92, 27, 25, 4, no, no) \ 3144 \ 3145 SC( 93, 28, 26, 1, no, no) \ 3146 SC( 94, 28, 26, 2, no, no) \ 3147 SC( 95, 28, 26, 3, no, no) \ 3148 SC( 96, 28, 26, 4, no, no) \ 3149 \ 3150 SC( 97, 29, 27, 1, no, no) \ 3151 SC( 98, 29, 27, 2, no, no) \ 3152 SC( 99, 29, 27, 3, no, no) \ 3153 SC(100, 29, 27, 4, no, no) \ 3154 \ 3155 SC(101, 30, 28, 1, no, no) \ 3156 SC(102, 30, 28, 2, no, no) \ 3157 SC(103, 30, 28, 3, no, no) \ 3158 SC(104, 30, 28, 4, no, no) \ 3159 \ 3160 SC(105, 31, 29, 1, no, no) \ 3161 SC(106, 31, 29, 2, no, no) \ 3162 SC(107, 31, 29, 3, no, no) \ 3163 SC(108, 31, 29, 4, no, no) \ 3164 \ 3165 SC(109, 32, 30, 1, no, no) \ 3166 SC(110, 32, 30, 2, no, no) \ 3167 SC(111, 32, 30, 3, no, no) \ 3168 SC(112, 32, 30, 4, no, no) \ 3169 \ 3170 SC(113, 33, 31, 1, no, no) \ 3171 SC(114, 33, 31, 2, no, no) \ 3172 SC(115, 33, 31, 3, no, no) \ 3173 SC(116, 33, 31, 4, no, no) \ 3174 \ 3175 SC(117, 34, 32, 1, no, no) \ 3176 SC(118, 34, 32, 2, no, no) \ 3177 SC(119, 34, 32, 3, no, no) \ 3178 SC(120, 34, 32, 4, no, no) \ 3179 \ 3180 SC(121, 35, 33, 1, no, no) \ 3181 SC(122, 35, 33, 2, no, no) \ 3182 SC(123, 35, 33, 3, no, no) \ 3183 SC(124, 35, 33, 4, no, no) \ 3184 \ 3185 SC(125, 36, 34, 1, no, no) \ 3186 SC(126, 36, 34, 2, no, no) \ 3187 SC(127, 36, 34, 3, no, no) \ 3188 SC(128, 36, 34, 4, no, no) \ 3189 \ 3190 SC(129, 37, 35, 1, no, no) \ 3191 SC(130, 37, 35, 2, no, no) \ 3192 SC(131, 37, 35, 3, no, no) \ 3193 SC(132, 37, 35, 4, no, no) \ 3194 \ 3195 SC(133, 38, 36, 1, no, no) \ 3196 SC(134, 38, 36, 2, no, no) \ 3197 SC(135, 38, 36, 3, no, no) \ 3198 SC(136, 38, 36, 4, no, no) \ 3199 \ 3200 SC(137, 39, 37, 1, no, no) \ 3201 SC(138, 39, 37, 2, no, no) \ 3202 SC(139, 39, 37, 3, no, no) \ 3203 SC(140, 39, 37, 4, no, no) \ 3204 \ 3205 SC(141, 40, 38, 1, no, no) \ 3206 SC(142, 40, 38, 2, no, no) \ 3207 SC(143, 40, 38, 3, no, no) \ 3208 SC(144, 40, 38, 4, no, no) \ 3209 \ 3210 SC(145, 41, 39, 1, no, no) \ 3211 SC(146, 41, 39, 2, no, no) \ 3212 SC(147, 41, 39, 3, no, no) \ 3213 SC(148, 41, 39, 4, no, no) \ 3214 \ 3215 SC(149, 42, 40, 1, no, no) \ 3216 SC(150, 42, 40, 2, no, no) \ 3217 SC(151, 42, 40, 3, no, no) \ 3218 SC(152, 42, 40, 4, no, no) \ 3219 \ 3220 SC(153, 43, 41, 1, no, no) \ 3221 SC(154, 43, 41, 2, no, no) \ 3222 SC(155, 43, 41, 3, no, no) \ 3223 SC(156, 43, 41, 4, no, no) \ 3224 \ 3225 SC(157, 44, 42, 1, no, no) \ 3226 SC(158, 44, 42, 2, no, no) \ 3227 SC(159, 44, 42, 3, no, no) \ 3228 SC(160, 44, 42, 4, no, no) \ 3229 \ 3230 SC(161, 45, 43, 1, no, no) \ 3231 SC(162, 45, 43, 2, no, no) \ 3232 SC(163, 45, 43, 3, no, no) \ 3233 SC(164, 45, 43, 4, no, no) \ 3234 \ 3235 SC(165, 46, 44, 1, no, no) \ 3236 SC(166, 46, 44, 2, no, no) \ 3237 SC(167, 46, 44, 3, no, no) \ 3238 SC(168, 46, 44, 4, no, no) \ 3239 \ 3240 SC(169, 47, 45, 1, no, no) \ 3241 SC(170, 47, 45, 2, no, no) \ 3242 SC(171, 47, 45, 3, no, no) \ 3243 SC(172, 47, 45, 4, no, no) \ 3244 \ 3245 SC(173, 48, 46, 1, no, no) \ 3246 SC(174, 48, 46, 2, no, no) \ 3247 SC(175, 48, 46, 3, no, no) \ 3248 SC(176, 48, 46, 4, no, no) \ 3249 \ 3250 SC(177, 49, 47, 1, no, no) \ 3251 SC(178, 49, 47, 2, no, no) \ 3252 SC(179, 49, 47, 3, no, no) \ 3253 SC(180, 49, 47, 4, no, no) \ 3254 \ 3255 SC(181, 50, 48, 1, no, no) \ 3256 SC(182, 50, 48, 2, no, no) \ 3257 SC(183, 50, 48, 3, no, no) \ 3258 SC(184, 50, 48, 4, no, no) \ 3259 \ 3260 SC(185, 51, 49, 1, no, no) \ 3261 SC(186, 51, 49, 2, no, no) \ 3262 SC(187, 51, 49, 3, no, no) \ 3263 SC(188, 51, 49, 4, no, no) \ 3264 \ 3265 SC(189, 52, 50, 1, no, no) \ 3266 SC(190, 52, 50, 2, no, no) \ 3267 SC(191, 52, 50, 3, no, no) \ 3268 SC(192, 52, 50, 4, no, no) \ 3269 \ 3270 SC(193, 53, 51, 1, no, no) \ 3271 SC(194, 53, 51, 2, no, no) \ 3272 SC(195, 53, 51, 3, no, no) \ 3273 SC(196, 53, 51, 4, no, no) \ 3274 \ 3275 SC(197, 54, 52, 1, no, no) \ 3276 SC(198, 54, 52, 2, no, no) \ 3277 SC(199, 54, 52, 3, no, no) \ 3278 SC(200, 54, 52, 4, no, no) \ 3279 \ 3280 SC(201, 55, 53, 1, no, no) \ 3281 SC(202, 55, 53, 2, no, no) \ 3282 SC(203, 55, 53, 3, no, no) \ 3283 SC(204, 55, 53, 4, no, no) \ 3284 \ 3285 SC(205, 56, 54, 1, no, no) \ 3286 SC(206, 56, 54, 2, no, no) \ 3287 SC(207, 56, 54, 3, no, no) \ 3288 SC(208, 56, 54, 4, no, no) \ 3289 \ 3290 SC(209, 57, 55, 1, no, no) \ 3291 SC(210, 57, 55, 2, no, no) \ 3292 SC(211, 57, 55, 3, no, no) \ 3293 SC(212, 57, 55, 4, no, no) \ 3294 \ 3295 SC(213, 58, 56, 1, no, no) \ 3296 SC(214, 58, 56, 2, no, no) \ 3297 SC(215, 58, 56, 3, no, no) \ 3298 SC(216, 58, 56, 4, no, no) \ 3299 \ 3300 SC(217, 59, 57, 1, no, no) \ 3301 SC(218, 59, 57, 2, no, no) \ 3302 SC(219, 59, 57, 3, no, no) \ 3303 SC(220, 59, 57, 4, no, no) \ 3304 \ 3305 SC(221, 60, 58, 1, no, no) \ 3306 SC(222, 60, 58, 2, no, no) \ 3307 SC(223, 60, 58, 3, no, no) \ 3308 SC(224, 60, 58, 4, no, no) \ 3309 \ 3310 SC(225, 61, 59, 1, no, no) \ 3311 SC(226, 61, 59, 2, no, no) \ 3312 SC(227, 61, 59, 3, no, no) \ 3313 SC(228, 61, 59, 4, no, no) \ 3314 \ 3315 SC(229, 62, 60, 1, no, no) \ 3316 SC(230, 62, 60, 2, no, no) \ 3317 SC(231, 62, 60, 3, no, no) \ 3318 3319#define SIZE_CLASSES_DEFINED 3320#define NTBINS 1 3321#define NLBINS 29 3322#define NBINS 36 3323#define NSIZES 232 3324#define LG_TINY_MAXCLASS 3 3325#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 3326#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 3327#define LG_LARGE_MINCLASS 14 3328#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 3329#endif 3330 3331#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 13) 3332#define SIZE_CLASSES \ 3333 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 3334 SC( 0, 3, 3, 0, yes, 3) \ 3335 \ 3336 SC( 1, 3, 3, 1, yes, 3) \ 3337 SC( 2, 4, 4, 1, yes, 4) \ 3338 SC( 3, 4, 4, 2, yes, 4) \ 3339 SC( 4, 4, 4, 3, yes, 4) \ 3340 \ 3341 SC( 5, 6, 4, 1, yes, 4) \ 3342 SC( 6, 6, 4, 2, yes, 4) \ 3343 SC( 7, 6, 4, 3, yes, 4) \ 3344 SC( 8, 6, 4, 4, yes, 4) \ 3345 \ 3346 SC( 9, 7, 5, 1, yes, 5) \ 3347 SC( 10, 7, 5, 2, yes, 5) \ 3348 SC( 11, 7, 5, 3, yes, 5) \ 3349 SC( 12, 7, 5, 4, yes, 5) \ 3350 \ 3351 SC( 13, 8, 6, 1, yes, 6) \ 3352 SC( 14, 8, 6, 2, yes, 6) \ 3353 SC( 15, 8, 6, 3, yes, 6) \ 3354 SC( 16, 8, 6, 4, yes, 6) \ 3355 \ 3356 SC( 17, 9, 7, 1, yes, 7) \ 3357 SC( 18, 9, 7, 2, yes, 7) \ 3358 SC( 19, 9, 7, 3, yes, 7) \ 3359 SC( 20, 9, 7, 4, yes, 7) \ 3360 \ 3361 SC( 21, 10, 8, 1, yes, 8) \ 3362 SC( 22, 10, 8, 2, yes, 8) \ 3363 SC( 23, 10, 8, 3, yes, 8) \ 3364 SC( 24, 10, 8, 4, yes, 8) \ 3365 \ 3366 SC( 25, 11, 9, 1, yes, 9) \ 3367 SC( 26, 11, 9, 2, yes, 9) \ 3368 SC( 27, 11, 9, 3, yes, 9) \ 3369 SC( 28, 11, 9, 4, yes, 9) \ 3370 \ 3371 SC( 29, 12, 10, 1, yes, no) \ 3372 SC( 30, 12, 10, 2, yes, no) \ 3373 SC( 31, 12, 10, 3, yes, no) \ 3374 SC( 32, 12, 10, 4, yes, no) \ 3375 \ 3376 SC( 33, 13, 11, 1, yes, no) \ 3377 SC( 34, 13, 11, 2, yes, no) \ 3378 SC( 35, 13, 11, 3, yes, no) \ 3379 SC( 36, 13, 11, 4, yes, no) \ 3380 \ 3381 SC( 37, 14, 12, 1, yes, no) \ 3382 SC( 38, 14, 12, 2, yes, no) \ 3383 SC( 39, 14, 12, 3, yes, no) \ 3384 SC( 40, 14, 12, 4, no, no) \ 3385 \ 3386 SC( 41, 15, 13, 1, no, no) \ 3387 SC( 42, 15, 13, 2, no, no) \ 3388 SC( 43, 15, 13, 3, no, no) \ 3389 SC( 44, 15, 13, 4, no, no) \ 3390 \ 3391 SC( 45, 16, 14, 1, no, no) \ 3392 SC( 46, 16, 14, 2, no, no) \ 3393 SC( 47, 16, 14, 3, no, no) \ 3394 SC( 48, 16, 14, 4, no, no) \ 3395 \ 3396 SC( 49, 17, 15, 1, no, no) \ 3397 SC( 50, 17, 15, 2, no, no) \ 3398 SC( 51, 17, 15, 3, no, no) \ 3399 SC( 52, 17, 15, 4, no, no) \ 3400 \ 3401 SC( 53, 18, 16, 1, no, no) \ 3402 SC( 54, 18, 16, 2, no, no) \ 3403 SC( 55, 18, 16, 3, no, no) \ 3404 SC( 56, 18, 16, 4, no, no) \ 3405 \ 3406 SC( 57, 19, 17, 1, no, no) \ 3407 SC( 58, 19, 17, 2, no, no) \ 3408 SC( 59, 19, 17, 3, no, no) \ 3409 SC( 60, 19, 17, 4, no, no) \ 3410 \ 3411 SC( 61, 20, 18, 1, no, no) \ 3412 SC( 62, 20, 18, 2, no, no) \ 3413 SC( 63, 20, 18, 3, no, no) \ 3414 SC( 64, 20, 18, 4, no, no) \ 3415 \ 3416 SC( 65, 21, 19, 1, no, no) \ 3417 SC( 66, 21, 19, 2, no, no) \ 3418 SC( 67, 21, 19, 3, no, no) \ 3419 SC( 68, 21, 19, 4, no, no) \ 3420 \ 3421 SC( 69, 22, 20, 1, no, no) \ 3422 SC( 70, 22, 20, 2, no, no) \ 3423 SC( 71, 22, 20, 3, no, no) \ 3424 SC( 72, 22, 20, 4, no, no) \ 3425 \ 3426 SC( 73, 23, 21, 1, no, no) \ 3427 SC( 74, 23, 21, 2, no, no) \ 3428 SC( 75, 23, 21, 3, no, no) \ 3429 SC( 76, 23, 21, 4, no, no) \ 3430 \ 3431 SC( 77, 24, 22, 1, no, no) \ 3432 SC( 78, 24, 22, 2, no, no) \ 3433 SC( 79, 24, 22, 3, no, no) \ 3434 SC( 80, 24, 22, 4, no, no) \ 3435 \ 3436 SC( 81, 25, 23, 1, no, no) \ 3437 SC( 82, 25, 23, 2, no, no) \ 3438 SC( 83, 25, 23, 3, no, no) \ 3439 SC( 84, 25, 23, 4, no, no) \ 3440 \ 3441 SC( 85, 26, 24, 1, no, no) \ 3442 SC( 86, 26, 24, 2, no, no) \ 3443 SC( 87, 26, 24, 3, no, no) \ 3444 SC( 88, 26, 24, 4, no, no) \ 3445 \ 3446 SC( 89, 27, 25, 1, no, no) \ 3447 SC( 90, 27, 25, 2, no, no) \ 3448 SC( 91, 27, 25, 3, no, no) \ 3449 SC( 92, 27, 25, 4, no, no) \ 3450 \ 3451 SC( 93, 28, 26, 1, no, no) \ 3452 SC( 94, 28, 26, 2, no, no) \ 3453 SC( 95, 28, 26, 3, no, no) \ 3454 SC( 96, 28, 26, 4, no, no) \ 3455 \ 3456 SC( 97, 29, 27, 1, no, no) \ 3457 SC( 98, 29, 27, 2, no, no) \ 3458 SC( 99, 29, 27, 3, no, no) \ 3459 SC(100, 29, 27, 4, no, no) \ 3460 \ 3461 SC(101, 30, 28, 1, no, no) \ 3462 SC(102, 30, 28, 2, no, no) \ 3463 SC(103, 30, 28, 3, no, no) \ 3464 SC(104, 30, 28, 4, no, no) \ 3465 \ 3466 SC(105, 31, 29, 1, no, no) \ 3467 SC(106, 31, 29, 2, no, no) \ 3468 SC(107, 31, 29, 3, no, no) \ 3469 SC(108, 31, 29, 4, no, no) \ 3470 \ 3471 SC(109, 32, 30, 1, no, no) \ 3472 SC(110, 32, 30, 2, no, no) \ 3473 SC(111, 32, 30, 3, no, no) \ 3474 SC(112, 32, 30, 4, no, no) \ 3475 \ 3476 SC(113, 33, 31, 1, no, no) \ 3477 SC(114, 33, 31, 2, no, no) \ 3478 SC(115, 33, 31, 3, no, no) \ 3479 SC(116, 33, 31, 4, no, no) \ 3480 \ 3481 SC(117, 34, 32, 1, no, no) \ 3482 SC(118, 34, 32, 2, no, no) \ 3483 SC(119, 34, 32, 3, no, no) \ 3484 SC(120, 34, 32, 4, no, no) \ 3485 \ 3486 SC(121, 35, 33, 1, no, no) \ 3487 SC(122, 35, 33, 2, no, no) \ 3488 SC(123, 35, 33, 3, no, no) \ 3489 SC(124, 35, 33, 4, no, no) \ 3490 \ 3491 SC(125, 36, 34, 1, no, no) \ 3492 SC(126, 36, 34, 2, no, no) \ 3493 SC(127, 36, 34, 3, no, no) \ 3494 SC(128, 36, 34, 4, no, no) \ 3495 \ 3496 SC(129, 37, 35, 1, no, no) \ 3497 SC(130, 37, 35, 2, no, no) \ 3498 SC(131, 37, 35, 3, no, no) \ 3499 SC(132, 37, 35, 4, no, no) \ 3500 \ 3501 SC(133, 38, 36, 1, no, no) \ 3502 SC(134, 38, 36, 2, no, no) \ 3503 SC(135, 38, 36, 3, no, no) \ 3504 SC(136, 38, 36, 4, no, no) \ 3505 \ 3506 SC(137, 39, 37, 1, no, no) \ 3507 SC(138, 39, 37, 2, no, no) \ 3508 SC(139, 39, 37, 3, no, no) \ 3509 SC(140, 39, 37, 4, no, no) \ 3510 \ 3511 SC(141, 40, 38, 1, no, no) \ 3512 SC(142, 40, 38, 2, no, no) \ 3513 SC(143, 40, 38, 3, no, no) \ 3514 SC(144, 40, 38, 4, no, no) \ 3515 \ 3516 SC(145, 41, 39, 1, no, no) \ 3517 SC(146, 41, 39, 2, no, no) \ 3518 SC(147, 41, 39, 3, no, no) \ 3519 SC(148, 41, 39, 4, no, no) \ 3520 \ 3521 SC(149, 42, 40, 1, no, no) \ 3522 SC(150, 42, 40, 2, no, no) \ 3523 SC(151, 42, 40, 3, no, no) \ 3524 SC(152, 42, 40, 4, no, no) \ 3525 \ 3526 SC(153, 43, 41, 1, no, no) \ 3527 SC(154, 43, 41, 2, no, no) \ 3528 SC(155, 43, 41, 3, no, no) \ 3529 SC(156, 43, 41, 4, no, no) \ 3530 \ 3531 SC(157, 44, 42, 1, no, no) \ 3532 SC(158, 44, 42, 2, no, no) \ 3533 SC(159, 44, 42, 3, no, no) \ 3534 SC(160, 44, 42, 4, no, no) \ 3535 \ 3536 SC(161, 45, 43, 1, no, no) \ 3537 SC(162, 45, 43, 2, no, no) \ 3538 SC(163, 45, 43, 3, no, no) \ 3539 SC(164, 45, 43, 4, no, no) \ 3540 \ 3541 SC(165, 46, 44, 1, no, no) \ 3542 SC(166, 46, 44, 2, no, no) \ 3543 SC(167, 46, 44, 3, no, no) \ 3544 SC(168, 46, 44, 4, no, no) \ 3545 \ 3546 SC(169, 47, 45, 1, no, no) \ 3547 SC(170, 47, 45, 2, no, no) \ 3548 SC(171, 47, 45, 3, no, no) \ 3549 SC(172, 47, 45, 4, no, no) \ 3550 \ 3551 SC(173, 48, 46, 1, no, no) \ 3552 SC(174, 48, 46, 2, no, no) \ 3553 SC(175, 48, 46, 3, no, no) \ 3554 SC(176, 48, 46, 4, no, no) \ 3555 \ 3556 SC(177, 49, 47, 1, no, no) \ 3557 SC(178, 49, 47, 2, no, no) \ 3558 SC(179, 49, 47, 3, no, no) \ 3559 SC(180, 49, 47, 4, no, no) \ 3560 \ 3561 SC(181, 50, 48, 1, no, no) \ 3562 SC(182, 50, 48, 2, no, no) \ 3563 SC(183, 50, 48, 3, no, no) \ 3564 SC(184, 50, 48, 4, no, no) \ 3565 \ 3566 SC(185, 51, 49, 1, no, no) \ 3567 SC(186, 51, 49, 2, no, no) \ 3568 SC(187, 51, 49, 3, no, no) \ 3569 SC(188, 51, 49, 4, no, no) \ 3570 \ 3571 SC(189, 52, 50, 1, no, no) \ 3572 SC(190, 52, 50, 2, no, no) \ 3573 SC(191, 52, 50, 3, no, no) \ 3574 SC(192, 52, 50, 4, no, no) \ 3575 \ 3576 SC(193, 53, 51, 1, no, no) \ 3577 SC(194, 53, 51, 2, no, no) \ 3578 SC(195, 53, 51, 3, no, no) \ 3579 SC(196, 53, 51, 4, no, no) \ 3580 \ 3581 SC(197, 54, 52, 1, no, no) \ 3582 SC(198, 54, 52, 2, no, no) \ 3583 SC(199, 54, 52, 3, no, no) \ 3584 SC(200, 54, 52, 4, no, no) \ 3585 \ 3586 SC(201, 55, 53, 1, no, no) \ 3587 SC(202, 55, 53, 2, no, no) \ 3588 SC(203, 55, 53, 3, no, no) \ 3589 SC(204, 55, 53, 4, no, no) \ 3590 \ 3591 SC(205, 56, 54, 1, no, no) \ 3592 SC(206, 56, 54, 2, no, no) \ 3593 SC(207, 56, 54, 3, no, no) \ 3594 SC(208, 56, 54, 4, no, no) \ 3595 \ 3596 SC(209, 57, 55, 1, no, no) \ 3597 SC(210, 57, 55, 2, no, no) \ 3598 SC(211, 57, 55, 3, no, no) \ 3599 SC(212, 57, 55, 4, no, no) \ 3600 \ 3601 SC(213, 58, 56, 1, no, no) \ 3602 SC(214, 58, 56, 2, no, no) \ 3603 SC(215, 58, 56, 3, no, no) \ 3604 SC(216, 58, 56, 4, no, no) \ 3605 \ 3606 SC(217, 59, 57, 1, no, no) \ 3607 SC(218, 59, 57, 2, no, no) \ 3608 SC(219, 59, 57, 3, no, no) \ 3609 SC(220, 59, 57, 4, no, no) \ 3610 \ 3611 SC(221, 60, 58, 1, no, no) \ 3612 SC(222, 60, 58, 2, no, no) \ 3613 SC(223, 60, 58, 3, no, no) \ 3614 SC(224, 60, 58, 4, no, no) \ 3615 \ 3616 SC(225, 61, 59, 1, no, no) \ 3617 SC(226, 61, 59, 2, no, no) \ 3618 SC(227, 61, 59, 3, no, no) \ 3619 SC(228, 61, 59, 4, no, no) \ 3620 \ 3621 SC(229, 62, 60, 1, no, no) \ 3622 SC(230, 62, 60, 2, no, no) \ 3623 SC(231, 62, 60, 3, no, no) \ 3624 3625#define SIZE_CLASSES_DEFINED 3626#define NTBINS 1 3627#define NLBINS 29 3628#define NBINS 40 3629#define NSIZES 232 3630#define LG_TINY_MAXCLASS 3 3631#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 3632#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 3633#define LG_LARGE_MINCLASS 15 3634#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 3635#endif 3636 3637#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 14) 3638#define SIZE_CLASSES \ 3639 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 3640 SC( 0, 3, 3, 0, yes, 3) \ 3641 \ 3642 SC( 1, 3, 3, 1, yes, 3) \ 3643 SC( 2, 4, 4, 1, yes, 4) \ 3644 SC( 3, 4, 4, 2, yes, 4) \ 3645 SC( 4, 4, 4, 3, yes, 4) \ 3646 \ 3647 SC( 5, 6, 4, 1, yes, 4) \ 3648 SC( 6, 6, 4, 2, yes, 4) \ 3649 SC( 7, 6, 4, 3, yes, 4) \ 3650 SC( 8, 6, 4, 4, yes, 4) \ 3651 \ 3652 SC( 9, 7, 5, 1, yes, 5) \ 3653 SC( 10, 7, 5, 2, yes, 5) \ 3654 SC( 11, 7, 5, 3, yes, 5) \ 3655 SC( 12, 7, 5, 4, yes, 5) \ 3656 \ 3657 SC( 13, 8, 6, 1, yes, 6) \ 3658 SC( 14, 8, 6, 2, yes, 6) \ 3659 SC( 15, 8, 6, 3, yes, 6) \ 3660 SC( 16, 8, 6, 4, yes, 6) \ 3661 \ 3662 SC( 17, 9, 7, 1, yes, 7) \ 3663 SC( 18, 9, 7, 2, yes, 7) \ 3664 SC( 19, 9, 7, 3, yes, 7) \ 3665 SC( 20, 9, 7, 4, yes, 7) \ 3666 \ 3667 SC( 21, 10, 8, 1, yes, 8) \ 3668 SC( 22, 10, 8, 2, yes, 8) \ 3669 SC( 23, 10, 8, 3, yes, 8) \ 3670 SC( 24, 10, 8, 4, yes, 8) \ 3671 \ 3672 SC( 25, 11, 9, 1, yes, 9) \ 3673 SC( 26, 11, 9, 2, yes, 9) \ 3674 SC( 27, 11, 9, 3, yes, 9) \ 3675 SC( 28, 11, 9, 4, yes, 9) \ 3676 \ 3677 SC( 29, 12, 10, 1, yes, no) \ 3678 SC( 30, 12, 10, 2, yes, no) \ 3679 SC( 31, 12, 10, 3, yes, no) \ 3680 SC( 32, 12, 10, 4, yes, no) \ 3681 \ 3682 SC( 33, 13, 11, 1, yes, no) \ 3683 SC( 34, 13, 11, 2, yes, no) \ 3684 SC( 35, 13, 11, 3, yes, no) \ 3685 SC( 36, 13, 11, 4, yes, no) \ 3686 \ 3687 SC( 37, 14, 12, 1, yes, no) \ 3688 SC( 38, 14, 12, 2, yes, no) \ 3689 SC( 39, 14, 12, 3, yes, no) \ 3690 SC( 40, 14, 12, 4, yes, no) \ 3691 \ 3692 SC( 41, 15, 13, 1, yes, no) \ 3693 SC( 42, 15, 13, 2, yes, no) \ 3694 SC( 43, 15, 13, 3, yes, no) \ 3695 SC( 44, 15, 13, 4, no, no) \ 3696 \ 3697 SC( 45, 16, 14, 1, no, no) \ 3698 SC( 46, 16, 14, 2, no, no) \ 3699 SC( 47, 16, 14, 3, no, no) \ 3700 SC( 48, 16, 14, 4, no, no) \ 3701 \ 3702 SC( 49, 17, 15, 1, no, no) \ 3703 SC( 50, 17, 15, 2, no, no) \ 3704 SC( 51, 17, 15, 3, no, no) \ 3705 SC( 52, 17, 15, 4, no, no) \ 3706 \ 3707 SC( 53, 18, 16, 1, no, no) \ 3708 SC( 54, 18, 16, 2, no, no) \ 3709 SC( 55, 18, 16, 3, no, no) \ 3710 SC( 56, 18, 16, 4, no, no) \ 3711 \ 3712 SC( 57, 19, 17, 1, no, no) \ 3713 SC( 58, 19, 17, 2, no, no) \ 3714 SC( 59, 19, 17, 3, no, no) \ 3715 SC( 60, 19, 17, 4, no, no) \ 3716 \ 3717 SC( 61, 20, 18, 1, no, no) \ 3718 SC( 62, 20, 18, 2, no, no) \ 3719 SC( 63, 20, 18, 3, no, no) \ 3720 SC( 64, 20, 18, 4, no, no) \ 3721 \ 3722 SC( 65, 21, 19, 1, no, no) \ 3723 SC( 66, 21, 19, 2, no, no) \ 3724 SC( 67, 21, 19, 3, no, no) \ 3725 SC( 68, 21, 19, 4, no, no) \ 3726 \ 3727 SC( 69, 22, 20, 1, no, no) \ 3728 SC( 70, 22, 20, 2, no, no) \ 3729 SC( 71, 22, 20, 3, no, no) \ 3730 SC( 72, 22, 20, 4, no, no) \ 3731 \ 3732 SC( 73, 23, 21, 1, no, no) \ 3733 SC( 74, 23, 21, 2, no, no) \ 3734 SC( 75, 23, 21, 3, no, no) \ 3735 SC( 76, 23, 21, 4, no, no) \ 3736 \ 3737 SC( 77, 24, 22, 1, no, no) \ 3738 SC( 78, 24, 22, 2, no, no) \ 3739 SC( 79, 24, 22, 3, no, no) \ 3740 SC( 80, 24, 22, 4, no, no) \ 3741 \ 3742 SC( 81, 25, 23, 1, no, no) \ 3743 SC( 82, 25, 23, 2, no, no) \ 3744 SC( 83, 25, 23, 3, no, no) \ 3745 SC( 84, 25, 23, 4, no, no) \ 3746 \ 3747 SC( 85, 26, 24, 1, no, no) \ 3748 SC( 86, 26, 24, 2, no, no) \ 3749 SC( 87, 26, 24, 3, no, no) \ 3750 SC( 88, 26, 24, 4, no, no) \ 3751 \ 3752 SC( 89, 27, 25, 1, no, no) \ 3753 SC( 90, 27, 25, 2, no, no) \ 3754 SC( 91, 27, 25, 3, no, no) \ 3755 SC( 92, 27, 25, 4, no, no) \ 3756 \ 3757 SC( 93, 28, 26, 1, no, no) \ 3758 SC( 94, 28, 26, 2, no, no) \ 3759 SC( 95, 28, 26, 3, no, no) \ 3760 SC( 96, 28, 26, 4, no, no) \ 3761 \ 3762 SC( 97, 29, 27, 1, no, no) \ 3763 SC( 98, 29, 27, 2, no, no) \ 3764 SC( 99, 29, 27, 3, no, no) \ 3765 SC(100, 29, 27, 4, no, no) \ 3766 \ 3767 SC(101, 30, 28, 1, no, no) \ 3768 SC(102, 30, 28, 2, no, no) \ 3769 SC(103, 30, 28, 3, no, no) \ 3770 SC(104, 30, 28, 4, no, no) \ 3771 \ 3772 SC(105, 31, 29, 1, no, no) \ 3773 SC(106, 31, 29, 2, no, no) \ 3774 SC(107, 31, 29, 3, no, no) \ 3775 SC(108, 31, 29, 4, no, no) \ 3776 \ 3777 SC(109, 32, 30, 1, no, no) \ 3778 SC(110, 32, 30, 2, no, no) \ 3779 SC(111, 32, 30, 3, no, no) \ 3780 SC(112, 32, 30, 4, no, no) \ 3781 \ 3782 SC(113, 33, 31, 1, no, no) \ 3783 SC(114, 33, 31, 2, no, no) \ 3784 SC(115, 33, 31, 3, no, no) \ 3785 SC(116, 33, 31, 4, no, no) \ 3786 \ 3787 SC(117, 34, 32, 1, no, no) \ 3788 SC(118, 34, 32, 2, no, no) \ 3789 SC(119, 34, 32, 3, no, no) \ 3790 SC(120, 34, 32, 4, no, no) \ 3791 \ 3792 SC(121, 35, 33, 1, no, no) \ 3793 SC(122, 35, 33, 2, no, no) \ 3794 SC(123, 35, 33, 3, no, no) \ 3795 SC(124, 35, 33, 4, no, no) \ 3796 \ 3797 SC(125, 36, 34, 1, no, no) \ 3798 SC(126, 36, 34, 2, no, no) \ 3799 SC(127, 36, 34, 3, no, no) \ 3800 SC(128, 36, 34, 4, no, no) \ 3801 \ 3802 SC(129, 37, 35, 1, no, no) \ 3803 SC(130, 37, 35, 2, no, no) \ 3804 SC(131, 37, 35, 3, no, no) \ 3805 SC(132, 37, 35, 4, no, no) \ 3806 \ 3807 SC(133, 38, 36, 1, no, no) \ 3808 SC(134, 38, 36, 2, no, no) \ 3809 SC(135, 38, 36, 3, no, no) \ 3810 SC(136, 38, 36, 4, no, no) \ 3811 \ 3812 SC(137, 39, 37, 1, no, no) \ 3813 SC(138, 39, 37, 2, no, no) \ 3814 SC(139, 39, 37, 3, no, no) \ 3815 SC(140, 39, 37, 4, no, no) \ 3816 \ 3817 SC(141, 40, 38, 1, no, no) \ 3818 SC(142, 40, 38, 2, no, no) \ 3819 SC(143, 40, 38, 3, no, no) \ 3820 SC(144, 40, 38, 4, no, no) \ 3821 \ 3822 SC(145, 41, 39, 1, no, no) \ 3823 SC(146, 41, 39, 2, no, no) \ 3824 SC(147, 41, 39, 3, no, no) \ 3825 SC(148, 41, 39, 4, no, no) \ 3826 \ 3827 SC(149, 42, 40, 1, no, no) \ 3828 SC(150, 42, 40, 2, no, no) \ 3829 SC(151, 42, 40, 3, no, no) \ 3830 SC(152, 42, 40, 4, no, no) \ 3831 \ 3832 SC(153, 43, 41, 1, no, no) \ 3833 SC(154, 43, 41, 2, no, no) \ 3834 SC(155, 43, 41, 3, no, no) \ 3835 SC(156, 43, 41, 4, no, no) \ 3836 \ 3837 SC(157, 44, 42, 1, no, no) \ 3838 SC(158, 44, 42, 2, no, no) \ 3839 SC(159, 44, 42, 3, no, no) \ 3840 SC(160, 44, 42, 4, no, no) \ 3841 \ 3842 SC(161, 45, 43, 1, no, no) \ 3843 SC(162, 45, 43, 2, no, no) \ 3844 SC(163, 45, 43, 3, no, no) \ 3845 SC(164, 45, 43, 4, no, no) \ 3846 \ 3847 SC(165, 46, 44, 1, no, no) \ 3848 SC(166, 46, 44, 2, no, no) \ 3849 SC(167, 46, 44, 3, no, no) \ 3850 SC(168, 46, 44, 4, no, no) \ 3851 \ 3852 SC(169, 47, 45, 1, no, no) \ 3853 SC(170, 47, 45, 2, no, no) \ 3854 SC(171, 47, 45, 3, no, no) \ 3855 SC(172, 47, 45, 4, no, no) \ 3856 \ 3857 SC(173, 48, 46, 1, no, no) \ 3858 SC(174, 48, 46, 2, no, no) \ 3859 SC(175, 48, 46, 3, no, no) \ 3860 SC(176, 48, 46, 4, no, no) \ 3861 \ 3862 SC(177, 49, 47, 1, no, no) \ 3863 SC(178, 49, 47, 2, no, no) \ 3864 SC(179, 49, 47, 3, no, no) \ 3865 SC(180, 49, 47, 4, no, no) \ 3866 \ 3867 SC(181, 50, 48, 1, no, no) \ 3868 SC(182, 50, 48, 2, no, no) \ 3869 SC(183, 50, 48, 3, no, no) \ 3870 SC(184, 50, 48, 4, no, no) \ 3871 \ 3872 SC(185, 51, 49, 1, no, no) \ 3873 SC(186, 51, 49, 2, no, no) \ 3874 SC(187, 51, 49, 3, no, no) \ 3875 SC(188, 51, 49, 4, no, no) \ 3876 \ 3877 SC(189, 52, 50, 1, no, no) \ 3878 SC(190, 52, 50, 2, no, no) \ 3879 SC(191, 52, 50, 3, no, no) \ 3880 SC(192, 52, 50, 4, no, no) \ 3881 \ 3882 SC(193, 53, 51, 1, no, no) \ 3883 SC(194, 53, 51, 2, no, no) \ 3884 SC(195, 53, 51, 3, no, no) \ 3885 SC(196, 53, 51, 4, no, no) \ 3886 \ 3887 SC(197, 54, 52, 1, no, no) \ 3888 SC(198, 54, 52, 2, no, no) \ 3889 SC(199, 54, 52, 3, no, no) \ 3890 SC(200, 54, 52, 4, no, no) \ 3891 \ 3892 SC(201, 55, 53, 1, no, no) \ 3893 SC(202, 55, 53, 2, no, no) \ 3894 SC(203, 55, 53, 3, no, no) \ 3895 SC(204, 55, 53, 4, no, no) \ 3896 \ 3897 SC(205, 56, 54, 1, no, no) \ 3898 SC(206, 56, 54, 2, no, no) \ 3899 SC(207, 56, 54, 3, no, no) \ 3900 SC(208, 56, 54, 4, no, no) \ 3901 \ 3902 SC(209, 57, 55, 1, no, no) \ 3903 SC(210, 57, 55, 2, no, no) \ 3904 SC(211, 57, 55, 3, no, no) \ 3905 SC(212, 57, 55, 4, no, no) \ 3906 \ 3907 SC(213, 58, 56, 1, no, no) \ 3908 SC(214, 58, 56, 2, no, no) \ 3909 SC(215, 58, 56, 3, no, no) \ 3910 SC(216, 58, 56, 4, no, no) \ 3911 \ 3912 SC(217, 59, 57, 1, no, no) \ 3913 SC(218, 59, 57, 2, no, no) \ 3914 SC(219, 59, 57, 3, no, no) \ 3915 SC(220, 59, 57, 4, no, no) \ 3916 \ 3917 SC(221, 60, 58, 1, no, no) \ 3918 SC(222, 60, 58, 2, no, no) \ 3919 SC(223, 60, 58, 3, no, no) \ 3920 SC(224, 60, 58, 4, no, no) \ 3921 \ 3922 SC(225, 61, 59, 1, no, no) \ 3923 SC(226, 61, 59, 2, no, no) \ 3924 SC(227, 61, 59, 3, no, no) \ 3925 SC(228, 61, 59, 4, no, no) \ 3926 \ 3927 SC(229, 62, 60, 1, no, no) \ 3928 SC(230, 62, 60, 2, no, no) \ 3929 SC(231, 62, 60, 3, no, no) \ 3930 3931#define SIZE_CLASSES_DEFINED 3932#define NTBINS 1 3933#define NLBINS 29 3934#define NBINS 44 3935#define NSIZES 232 3936#define LG_TINY_MAXCLASS 3 3937#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 3938#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 3939#define LG_LARGE_MINCLASS 16 3940#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 3941#endif 3942 3943#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 16) 3944#define SIZE_CLASSES \ 3945 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 3946 SC( 0, 3, 3, 0, yes, 3) \ 3947 \ 3948 SC( 1, 3, 3, 1, yes, 3) \ 3949 SC( 2, 4, 4, 1, yes, 4) \ 3950 SC( 3, 4, 4, 2, yes, 4) \ 3951 SC( 4, 4, 4, 3, yes, 4) \ 3952 \ 3953 SC( 5, 6, 4, 1, yes, 4) \ 3954 SC( 6, 6, 4, 2, yes, 4) \ 3955 SC( 7, 6, 4, 3, yes, 4) \ 3956 SC( 8, 6, 4, 4, yes, 4) \ 3957 \ 3958 SC( 9, 7, 5, 1, yes, 5) \ 3959 SC( 10, 7, 5, 2, yes, 5) \ 3960 SC( 11, 7, 5, 3, yes, 5) \ 3961 SC( 12, 7, 5, 4, yes, 5) \ 3962 \ 3963 SC( 13, 8, 6, 1, yes, 6) \ 3964 SC( 14, 8, 6, 2, yes, 6) \ 3965 SC( 15, 8, 6, 3, yes, 6) \ 3966 SC( 16, 8, 6, 4, yes, 6) \ 3967 \ 3968 SC( 17, 9, 7, 1, yes, 7) \ 3969 SC( 18, 9, 7, 2, yes, 7) \ 3970 SC( 19, 9, 7, 3, yes, 7) \ 3971 SC( 20, 9, 7, 4, yes, 7) \ 3972 \ 3973 SC( 21, 10, 8, 1, yes, 8) \ 3974 SC( 22, 10, 8, 2, yes, 8) \ 3975 SC( 23, 10, 8, 3, yes, 8) \ 3976 SC( 24, 10, 8, 4, yes, 8) \ 3977 \ 3978 SC( 25, 11, 9, 1, yes, 9) \ 3979 SC( 26, 11, 9, 2, yes, 9) \ 3980 SC( 27, 11, 9, 3, yes, 9) \ 3981 SC( 28, 11, 9, 4, yes, 9) \ 3982 \ 3983 SC( 29, 12, 10, 1, yes, no) \ 3984 SC( 30, 12, 10, 2, yes, no) \ 3985 SC( 31, 12, 10, 3, yes, no) \ 3986 SC( 32, 12, 10, 4, yes, no) \ 3987 \ 3988 SC( 33, 13, 11, 1, yes, no) \ 3989 SC( 34, 13, 11, 2, yes, no) \ 3990 SC( 35, 13, 11, 3, yes, no) \ 3991 SC( 36, 13, 11, 4, yes, no) \ 3992 \ 3993 SC( 37, 14, 12, 1, yes, no) \ 3994 SC( 38, 14, 12, 2, yes, no) \ 3995 SC( 39, 14, 12, 3, yes, no) \ 3996 SC( 40, 14, 12, 4, yes, no) \ 3997 \ 3998 SC( 41, 15, 13, 1, yes, no) \ 3999 SC( 42, 15, 13, 2, yes, no) \ 4000 SC( 43, 15, 13, 3, yes, no) \ 4001 SC( 44, 15, 13, 4, yes, no) \ 4002 \ 4003 SC( 45, 16, 14, 1, yes, no) \ 4004 SC( 46, 16, 14, 2, yes, no) \ 4005 SC( 47, 16, 14, 3, yes, no) \ 4006 SC( 48, 16, 14, 4, yes, no) \ 4007 \ 4008 SC( 49, 17, 15, 1, yes, no) \ 4009 SC( 50, 17, 15, 2, yes, no) \ 4010 SC( 51, 17, 15, 3, yes, no) \ 4011 SC( 52, 17, 15, 4, no, no) \ 4012 \ 4013 SC( 53, 18, 16, 1, no, no) \ 4014 SC( 54, 18, 16, 2, no, no) \ 4015 SC( 55, 18, 16, 3, no, no) \ 4016 SC( 56, 18, 16, 4, no, no) \ 4017 \ 4018 SC( 57, 19, 17, 1, no, no) \ 4019 SC( 58, 19, 17, 2, no, no) \ 4020 SC( 59, 19, 17, 3, no, no) \ 4021 SC( 60, 19, 17, 4, no, no) \ 4022 \ 4023 SC( 61, 20, 18, 1, no, no) \ 4024 SC( 62, 20, 18, 2, no, no) \ 4025 SC( 63, 20, 18, 3, no, no) \ 4026 SC( 64, 20, 18, 4, no, no) \ 4027 \ 4028 SC( 65, 21, 19, 1, no, no) \ 4029 SC( 66, 21, 19, 2, no, no) \ 4030 SC( 67, 21, 19, 3, no, no) \ 4031 SC( 68, 21, 19, 4, no, no) \ 4032 \ 4033 SC( 69, 22, 20, 1, no, no) \ 4034 SC( 70, 22, 20, 2, no, no) \ 4035 SC( 71, 22, 20, 3, no, no) \ 4036 SC( 72, 22, 20, 4, no, no) \ 4037 \ 4038 SC( 73, 23, 21, 1, no, no) \ 4039 SC( 74, 23, 21, 2, no, no) \ 4040 SC( 75, 23, 21, 3, no, no) \ 4041 SC( 76, 23, 21, 4, no, no) \ 4042 \ 4043 SC( 77, 24, 22, 1, no, no) \ 4044 SC( 78, 24, 22, 2, no, no) \ 4045 SC( 79, 24, 22, 3, no, no) \ 4046 SC( 80, 24, 22, 4, no, no) \ 4047 \ 4048 SC( 81, 25, 23, 1, no, no) \ 4049 SC( 82, 25, 23, 2, no, no) \ 4050 SC( 83, 25, 23, 3, no, no) \ 4051 SC( 84, 25, 23, 4, no, no) \ 4052 \ 4053 SC( 85, 26, 24, 1, no, no) \ 4054 SC( 86, 26, 24, 2, no, no) \ 4055 SC( 87, 26, 24, 3, no, no) \ 4056 SC( 88, 26, 24, 4, no, no) \ 4057 \ 4058 SC( 89, 27, 25, 1, no, no) \ 4059 SC( 90, 27, 25, 2, no, no) \ 4060 SC( 91, 27, 25, 3, no, no) \ 4061 SC( 92, 27, 25, 4, no, no) \ 4062 \ 4063 SC( 93, 28, 26, 1, no, no) \ 4064 SC( 94, 28, 26, 2, no, no) \ 4065 SC( 95, 28, 26, 3, no, no) \ 4066 SC( 96, 28, 26, 4, no, no) \ 4067 \ 4068 SC( 97, 29, 27, 1, no, no) \ 4069 SC( 98, 29, 27, 2, no, no) \ 4070 SC( 99, 29, 27, 3, no, no) \ 4071 SC(100, 29, 27, 4, no, no) \ 4072 \ 4073 SC(101, 30, 28, 1, no, no) \ 4074 SC(102, 30, 28, 2, no, no) \ 4075 SC(103, 30, 28, 3, no, no) \ 4076 SC(104, 30, 28, 4, no, no) \ 4077 \ 4078 SC(105, 31, 29, 1, no, no) \ 4079 SC(106, 31, 29, 2, no, no) \ 4080 SC(107, 31, 29, 3, no, no) \ 4081 SC(108, 31, 29, 4, no, no) \ 4082 \ 4083 SC(109, 32, 30, 1, no, no) \ 4084 SC(110, 32, 30, 2, no, no) \ 4085 SC(111, 32, 30, 3, no, no) \ 4086 SC(112, 32, 30, 4, no, no) \ 4087 \ 4088 SC(113, 33, 31, 1, no, no) \ 4089 SC(114, 33, 31, 2, no, no) \ 4090 SC(115, 33, 31, 3, no, no) \ 4091 SC(116, 33, 31, 4, no, no) \ 4092 \ 4093 SC(117, 34, 32, 1, no, no) \ 4094 SC(118, 34, 32, 2, no, no) \ 4095 SC(119, 34, 32, 3, no, no) \ 4096 SC(120, 34, 32, 4, no, no) \ 4097 \ 4098 SC(121, 35, 33, 1, no, no) \ 4099 SC(122, 35, 33, 2, no, no) \ 4100 SC(123, 35, 33, 3, no, no) \ 4101 SC(124, 35, 33, 4, no, no) \ 4102 \ 4103 SC(125, 36, 34, 1, no, no) \ 4104 SC(126, 36, 34, 2, no, no) \ 4105 SC(127, 36, 34, 3, no, no) \ 4106 SC(128, 36, 34, 4, no, no) \ 4107 \ 4108 SC(129, 37, 35, 1, no, no) \ 4109 SC(130, 37, 35, 2, no, no) \ 4110 SC(131, 37, 35, 3, no, no) \ 4111 SC(132, 37, 35, 4, no, no) \ 4112 \ 4113 SC(133, 38, 36, 1, no, no) \ 4114 SC(134, 38, 36, 2, no, no) \ 4115 SC(135, 38, 36, 3, no, no) \ 4116 SC(136, 38, 36, 4, no, no) \ 4117 \ 4118 SC(137, 39, 37, 1, no, no) \ 4119 SC(138, 39, 37, 2, no, no) \ 4120 SC(139, 39, 37, 3, no, no) \ 4121 SC(140, 39, 37, 4, no, no) \ 4122 \ 4123 SC(141, 40, 38, 1, no, no) \ 4124 SC(142, 40, 38, 2, no, no) \ 4125 SC(143, 40, 38, 3, no, no) \ 4126 SC(144, 40, 38, 4, no, no) \ 4127 \ 4128 SC(145, 41, 39, 1, no, no) \ 4129 SC(146, 41, 39, 2, no, no) \ 4130 SC(147, 41, 39, 3, no, no) \ 4131 SC(148, 41, 39, 4, no, no) \ 4132 \ 4133 SC(149, 42, 40, 1, no, no) \ 4134 SC(150, 42, 40, 2, no, no) \ 4135 SC(151, 42, 40, 3, no, no) \ 4136 SC(152, 42, 40, 4, no, no) \ 4137 \ 4138 SC(153, 43, 41, 1, no, no) \ 4139 SC(154, 43, 41, 2, no, no) \ 4140 SC(155, 43, 41, 3, no, no) \ 4141 SC(156, 43, 41, 4, no, no) \ 4142 \ 4143 SC(157, 44, 42, 1, no, no) \ 4144 SC(158, 44, 42, 2, no, no) \ 4145 SC(159, 44, 42, 3, no, no) \ 4146 SC(160, 44, 42, 4, no, no) \ 4147 \ 4148 SC(161, 45, 43, 1, no, no) \ 4149 SC(162, 45, 43, 2, no, no) \ 4150 SC(163, 45, 43, 3, no, no) \ 4151 SC(164, 45, 43, 4, no, no) \ 4152 \ 4153 SC(165, 46, 44, 1, no, no) \ 4154 SC(166, 46, 44, 2, no, no) \ 4155 SC(167, 46, 44, 3, no, no) \ 4156 SC(168, 46, 44, 4, no, no) \ 4157 \ 4158 SC(169, 47, 45, 1, no, no) \ 4159 SC(170, 47, 45, 2, no, no) \ 4160 SC(171, 47, 45, 3, no, no) \ 4161 SC(172, 47, 45, 4, no, no) \ 4162 \ 4163 SC(173, 48, 46, 1, no, no) \ 4164 SC(174, 48, 46, 2, no, no) \ 4165 SC(175, 48, 46, 3, no, no) \ 4166 SC(176, 48, 46, 4, no, no) \ 4167 \ 4168 SC(177, 49, 47, 1, no, no) \ 4169 SC(178, 49, 47, 2, no, no) \ 4170 SC(179, 49, 47, 3, no, no) \ 4171 SC(180, 49, 47, 4, no, no) \ 4172 \ 4173 SC(181, 50, 48, 1, no, no) \ 4174 SC(182, 50, 48, 2, no, no) \ 4175 SC(183, 50, 48, 3, no, no) \ 4176 SC(184, 50, 48, 4, no, no) \ 4177 \ 4178 SC(185, 51, 49, 1, no, no) \ 4179 SC(186, 51, 49, 2, no, no) \ 4180 SC(187, 51, 49, 3, no, no) \ 4181 SC(188, 51, 49, 4, no, no) \ 4182 \ 4183 SC(189, 52, 50, 1, no, no) \ 4184 SC(190, 52, 50, 2, no, no) \ 4185 SC(191, 52, 50, 3, no, no) \ 4186 SC(192, 52, 50, 4, no, no) \ 4187 \ 4188 SC(193, 53, 51, 1, no, no) \ 4189 SC(194, 53, 51, 2, no, no) \ 4190 SC(195, 53, 51, 3, no, no) \ 4191 SC(196, 53, 51, 4, no, no) \ 4192 \ 4193 SC(197, 54, 52, 1, no, no) \ 4194 SC(198, 54, 52, 2, no, no) \ 4195 SC(199, 54, 52, 3, no, no) \ 4196 SC(200, 54, 52, 4, no, no) \ 4197 \ 4198 SC(201, 55, 53, 1, no, no) \ 4199 SC(202, 55, 53, 2, no, no) \ 4200 SC(203, 55, 53, 3, no, no) \ 4201 SC(204, 55, 53, 4, no, no) \ 4202 \ 4203 SC(205, 56, 54, 1, no, no) \ 4204 SC(206, 56, 54, 2, no, no) \ 4205 SC(207, 56, 54, 3, no, no) \ 4206 SC(208, 56, 54, 4, no, no) \ 4207 \ 4208 SC(209, 57, 55, 1, no, no) \ 4209 SC(210, 57, 55, 2, no, no) \ 4210 SC(211, 57, 55, 3, no, no) \ 4211 SC(212, 57, 55, 4, no, no) \ 4212 \ 4213 SC(213, 58, 56, 1, no, no) \ 4214 SC(214, 58, 56, 2, no, no) \ 4215 SC(215, 58, 56, 3, no, no) \ 4216 SC(216, 58, 56, 4, no, no) \ 4217 \ 4218 SC(217, 59, 57, 1, no, no) \ 4219 SC(218, 59, 57, 2, no, no) \ 4220 SC(219, 59, 57, 3, no, no) \ 4221 SC(220, 59, 57, 4, no, no) \ 4222 \ 4223 SC(221, 60, 58, 1, no, no) \ 4224 SC(222, 60, 58, 2, no, no) \ 4225 SC(223, 60, 58, 3, no, no) \ 4226 SC(224, 60, 58, 4, no, no) \ 4227 \ 4228 SC(225, 61, 59, 1, no, no) \ 4229 SC(226, 61, 59, 2, no, no) \ 4230 SC(227, 61, 59, 3, no, no) \ 4231 SC(228, 61, 59, 4, no, no) \ 4232 \ 4233 SC(229, 62, 60, 1, no, no) \ 4234 SC(230, 62, 60, 2, no, no) \ 4235 SC(231, 62, 60, 3, no, no) \ 4236 4237#define SIZE_CLASSES_DEFINED 4238#define NTBINS 1 4239#define NLBINS 29 4240#define NBINS 52 4241#define NSIZES 232 4242#define LG_TINY_MAXCLASS 3 4243#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 4244#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 4245#define LG_LARGE_MINCLASS 18 4246#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 4247#endif 4248 4249#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 12) 4250#define SIZE_CLASSES \ 4251 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 4252 SC( 0, 4, 4, 0, yes, 4) \ 4253 SC( 1, 4, 4, 1, yes, 4) \ 4254 SC( 2, 4, 4, 2, yes, 4) \ 4255 SC( 3, 4, 4, 3, yes, 4) \ 4256 \ 4257 SC( 4, 6, 4, 1, yes, 4) \ 4258 SC( 5, 6, 4, 2, yes, 4) \ 4259 SC( 6, 6, 4, 3, yes, 4) \ 4260 SC( 7, 6, 4, 4, yes, 4) \ 4261 \ 4262 SC( 8, 7, 5, 1, yes, 5) \ 4263 SC( 9, 7, 5, 2, yes, 5) \ 4264 SC( 10, 7, 5, 3, yes, 5) \ 4265 SC( 11, 7, 5, 4, yes, 5) \ 4266 \ 4267 SC( 12, 8, 6, 1, yes, 6) \ 4268 SC( 13, 8, 6, 2, yes, 6) \ 4269 SC( 14, 8, 6, 3, yes, 6) \ 4270 SC( 15, 8, 6, 4, yes, 6) \ 4271 \ 4272 SC( 16, 9, 7, 1, yes, 7) \ 4273 SC( 17, 9, 7, 2, yes, 7) \ 4274 SC( 18, 9, 7, 3, yes, 7) \ 4275 SC( 19, 9, 7, 4, yes, 7) \ 4276 \ 4277 SC( 20, 10, 8, 1, yes, 8) \ 4278 SC( 21, 10, 8, 2, yes, 8) \ 4279 SC( 22, 10, 8, 3, yes, 8) \ 4280 SC( 23, 10, 8, 4, yes, 8) \ 4281 \ 4282 SC( 24, 11, 9, 1, yes, 9) \ 4283 SC( 25, 11, 9, 2, yes, 9) \ 4284 SC( 26, 11, 9, 3, yes, 9) \ 4285 SC( 27, 11, 9, 4, yes, 9) \ 4286 \ 4287 SC( 28, 12, 10, 1, yes, no) \ 4288 SC( 29, 12, 10, 2, yes, no) \ 4289 SC( 30, 12, 10, 3, yes, no) \ 4290 SC( 31, 12, 10, 4, yes, no) \ 4291 \ 4292 SC( 32, 13, 11, 1, yes, no) \ 4293 SC( 33, 13, 11, 2, yes, no) \ 4294 SC( 34, 13, 11, 3, yes, no) \ 4295 SC( 35, 13, 11, 4, no, no) \ 4296 \ 4297 SC( 36, 14, 12, 1, no, no) \ 4298 SC( 37, 14, 12, 2, no, no) \ 4299 SC( 38, 14, 12, 3, no, no) \ 4300 SC( 39, 14, 12, 4, no, no) \ 4301 \ 4302 SC( 40, 15, 13, 1, no, no) \ 4303 SC( 41, 15, 13, 2, no, no) \ 4304 SC( 42, 15, 13, 3, no, no) \ 4305 SC( 43, 15, 13, 4, no, no) \ 4306 \ 4307 SC( 44, 16, 14, 1, no, no) \ 4308 SC( 45, 16, 14, 2, no, no) \ 4309 SC( 46, 16, 14, 3, no, no) \ 4310 SC( 47, 16, 14, 4, no, no) \ 4311 \ 4312 SC( 48, 17, 15, 1, no, no) \ 4313 SC( 49, 17, 15, 2, no, no) \ 4314 SC( 50, 17, 15, 3, no, no) \ 4315 SC( 51, 17, 15, 4, no, no) \ 4316 \ 4317 SC( 52, 18, 16, 1, no, no) \ 4318 SC( 53, 18, 16, 2, no, no) \ 4319 SC( 54, 18, 16, 3, no, no) \ 4320 SC( 55, 18, 16, 4, no, no) \ 4321 \ 4322 SC( 56, 19, 17, 1, no, no) \ 4323 SC( 57, 19, 17, 2, no, no) \ 4324 SC( 58, 19, 17, 3, no, no) \ 4325 SC( 59, 19, 17, 4, no, no) \ 4326 \ 4327 SC( 60, 20, 18, 1, no, no) \ 4328 SC( 61, 20, 18, 2, no, no) \ 4329 SC( 62, 20, 18, 3, no, no) \ 4330 SC( 63, 20, 18, 4, no, no) \ 4331 \ 4332 SC( 64, 21, 19, 1, no, no) \ 4333 SC( 65, 21, 19, 2, no, no) \ 4334 SC( 66, 21, 19, 3, no, no) \ 4335 SC( 67, 21, 19, 4, no, no) \ 4336 \ 4337 SC( 68, 22, 20, 1, no, no) \ 4338 SC( 69, 22, 20, 2, no, no) \ 4339 SC( 70, 22, 20, 3, no, no) \ 4340 SC( 71, 22, 20, 4, no, no) \ 4341 \ 4342 SC( 72, 23, 21, 1, no, no) \ 4343 SC( 73, 23, 21, 2, no, no) \ 4344 SC( 74, 23, 21, 3, no, no) \ 4345 SC( 75, 23, 21, 4, no, no) \ 4346 \ 4347 SC( 76, 24, 22, 1, no, no) \ 4348 SC( 77, 24, 22, 2, no, no) \ 4349 SC( 78, 24, 22, 3, no, no) \ 4350 SC( 79, 24, 22, 4, no, no) \ 4351 \ 4352 SC( 80, 25, 23, 1, no, no) \ 4353 SC( 81, 25, 23, 2, no, no) \ 4354 SC( 82, 25, 23, 3, no, no) \ 4355 SC( 83, 25, 23, 4, no, no) \ 4356 \ 4357 SC( 84, 26, 24, 1, no, no) \ 4358 SC( 85, 26, 24, 2, no, no) \ 4359 SC( 86, 26, 24, 3, no, no) \ 4360 SC( 87, 26, 24, 4, no, no) \ 4361 \ 4362 SC( 88, 27, 25, 1, no, no) \ 4363 SC( 89, 27, 25, 2, no, no) \ 4364 SC( 90, 27, 25, 3, no, no) \ 4365 SC( 91, 27, 25, 4, no, no) \ 4366 \ 4367 SC( 92, 28, 26, 1, no, no) \ 4368 SC( 93, 28, 26, 2, no, no) \ 4369 SC( 94, 28, 26, 3, no, no) \ 4370 SC( 95, 28, 26, 4, no, no) \ 4371 \ 4372 SC( 96, 29, 27, 1, no, no) \ 4373 SC( 97, 29, 27, 2, no, no) \ 4374 SC( 98, 29, 27, 3, no, no) \ 4375 SC( 99, 29, 27, 4, no, no) \ 4376 \ 4377 SC(100, 30, 28, 1, no, no) \ 4378 SC(101, 30, 28, 2, no, no) \ 4379 SC(102, 30, 28, 3, no, no) \ 4380 SC(103, 30, 28, 4, no, no) \ 4381 \ 4382 SC(104, 31, 29, 1, no, no) \ 4383 SC(105, 31, 29, 2, no, no) \ 4384 SC(106, 31, 29, 3, no, no) \ 4385 SC(107, 31, 29, 4, no, no) \ 4386 \ 4387 SC(108, 32, 30, 1, no, no) \ 4388 SC(109, 32, 30, 2, no, no) \ 4389 SC(110, 32, 30, 3, no, no) \ 4390 SC(111, 32, 30, 4, no, no) \ 4391 \ 4392 SC(112, 33, 31, 1, no, no) \ 4393 SC(113, 33, 31, 2, no, no) \ 4394 SC(114, 33, 31, 3, no, no) \ 4395 SC(115, 33, 31, 4, no, no) \ 4396 \ 4397 SC(116, 34, 32, 1, no, no) \ 4398 SC(117, 34, 32, 2, no, no) \ 4399 SC(118, 34, 32, 3, no, no) \ 4400 SC(119, 34, 32, 4, no, no) \ 4401 \ 4402 SC(120, 35, 33, 1, no, no) \ 4403 SC(121, 35, 33, 2, no, no) \ 4404 SC(122, 35, 33, 3, no, no) \ 4405 SC(123, 35, 33, 4, no, no) \ 4406 \ 4407 SC(124, 36, 34, 1, no, no) \ 4408 SC(125, 36, 34, 2, no, no) \ 4409 SC(126, 36, 34, 3, no, no) \ 4410 SC(127, 36, 34, 4, no, no) \ 4411 \ 4412 SC(128, 37, 35, 1, no, no) \ 4413 SC(129, 37, 35, 2, no, no) \ 4414 SC(130, 37, 35, 3, no, no) \ 4415 SC(131, 37, 35, 4, no, no) \ 4416 \ 4417 SC(132, 38, 36, 1, no, no) \ 4418 SC(133, 38, 36, 2, no, no) \ 4419 SC(134, 38, 36, 3, no, no) \ 4420 SC(135, 38, 36, 4, no, no) \ 4421 \ 4422 SC(136, 39, 37, 1, no, no) \ 4423 SC(137, 39, 37, 2, no, no) \ 4424 SC(138, 39, 37, 3, no, no) \ 4425 SC(139, 39, 37, 4, no, no) \ 4426 \ 4427 SC(140, 40, 38, 1, no, no) \ 4428 SC(141, 40, 38, 2, no, no) \ 4429 SC(142, 40, 38, 3, no, no) \ 4430 SC(143, 40, 38, 4, no, no) \ 4431 \ 4432 SC(144, 41, 39, 1, no, no) \ 4433 SC(145, 41, 39, 2, no, no) \ 4434 SC(146, 41, 39, 3, no, no) \ 4435 SC(147, 41, 39, 4, no, no) \ 4436 \ 4437 SC(148, 42, 40, 1, no, no) \ 4438 SC(149, 42, 40, 2, no, no) \ 4439 SC(150, 42, 40, 3, no, no) \ 4440 SC(151, 42, 40, 4, no, no) \ 4441 \ 4442 SC(152, 43, 41, 1, no, no) \ 4443 SC(153, 43, 41, 2, no, no) \ 4444 SC(154, 43, 41, 3, no, no) \ 4445 SC(155, 43, 41, 4, no, no) \ 4446 \ 4447 SC(156, 44, 42, 1, no, no) \ 4448 SC(157, 44, 42, 2, no, no) \ 4449 SC(158, 44, 42, 3, no, no) \ 4450 SC(159, 44, 42, 4, no, no) \ 4451 \ 4452 SC(160, 45, 43, 1, no, no) \ 4453 SC(161, 45, 43, 2, no, no) \ 4454 SC(162, 45, 43, 3, no, no) \ 4455 SC(163, 45, 43, 4, no, no) \ 4456 \ 4457 SC(164, 46, 44, 1, no, no) \ 4458 SC(165, 46, 44, 2, no, no) \ 4459 SC(166, 46, 44, 3, no, no) \ 4460 SC(167, 46, 44, 4, no, no) \ 4461 \ 4462 SC(168, 47, 45, 1, no, no) \ 4463 SC(169, 47, 45, 2, no, no) \ 4464 SC(170, 47, 45, 3, no, no) \ 4465 SC(171, 47, 45, 4, no, no) \ 4466 \ 4467 SC(172, 48, 46, 1, no, no) \ 4468 SC(173, 48, 46, 2, no, no) \ 4469 SC(174, 48, 46, 3, no, no) \ 4470 SC(175, 48, 46, 4, no, no) \ 4471 \ 4472 SC(176, 49, 47, 1, no, no) \ 4473 SC(177, 49, 47, 2, no, no) \ 4474 SC(178, 49, 47, 3, no, no) \ 4475 SC(179, 49, 47, 4, no, no) \ 4476 \ 4477 SC(180, 50, 48, 1, no, no) \ 4478 SC(181, 50, 48, 2, no, no) \ 4479 SC(182, 50, 48, 3, no, no) \ 4480 SC(183, 50, 48, 4, no, no) \ 4481 \ 4482 SC(184, 51, 49, 1, no, no) \ 4483 SC(185, 51, 49, 2, no, no) \ 4484 SC(186, 51, 49, 3, no, no) \ 4485 SC(187, 51, 49, 4, no, no) \ 4486 \ 4487 SC(188, 52, 50, 1, no, no) \ 4488 SC(189, 52, 50, 2, no, no) \ 4489 SC(190, 52, 50, 3, no, no) \ 4490 SC(191, 52, 50, 4, no, no) \ 4491 \ 4492 SC(192, 53, 51, 1, no, no) \ 4493 SC(193, 53, 51, 2, no, no) \ 4494 SC(194, 53, 51, 3, no, no) \ 4495 SC(195, 53, 51, 4, no, no) \ 4496 \ 4497 SC(196, 54, 52, 1, no, no) \ 4498 SC(197, 54, 52, 2, no, no) \ 4499 SC(198, 54, 52, 3, no, no) \ 4500 SC(199, 54, 52, 4, no, no) \ 4501 \ 4502 SC(200, 55, 53, 1, no, no) \ 4503 SC(201, 55, 53, 2, no, no) \ 4504 SC(202, 55, 53, 3, no, no) \ 4505 SC(203, 55, 53, 4, no, no) \ 4506 \ 4507 SC(204, 56, 54, 1, no, no) \ 4508 SC(205, 56, 54, 2, no, no) \ 4509 SC(206, 56, 54, 3, no, no) \ 4510 SC(207, 56, 54, 4, no, no) \ 4511 \ 4512 SC(208, 57, 55, 1, no, no) \ 4513 SC(209, 57, 55, 2, no, no) \ 4514 SC(210, 57, 55, 3, no, no) \ 4515 SC(211, 57, 55, 4, no, no) \ 4516 \ 4517 SC(212, 58, 56, 1, no, no) \ 4518 SC(213, 58, 56, 2, no, no) \ 4519 SC(214, 58, 56, 3, no, no) \ 4520 SC(215, 58, 56, 4, no, no) \ 4521 \ 4522 SC(216, 59, 57, 1, no, no) \ 4523 SC(217, 59, 57, 2, no, no) \ 4524 SC(218, 59, 57, 3, no, no) \ 4525 SC(219, 59, 57, 4, no, no) \ 4526 \ 4527 SC(220, 60, 58, 1, no, no) \ 4528 SC(221, 60, 58, 2, no, no) \ 4529 SC(222, 60, 58, 3, no, no) \ 4530 SC(223, 60, 58, 4, no, no) \ 4531 \ 4532 SC(224, 61, 59, 1, no, no) \ 4533 SC(225, 61, 59, 2, no, no) \ 4534 SC(226, 61, 59, 3, no, no) \ 4535 SC(227, 61, 59, 4, no, no) \ 4536 \ 4537 SC(228, 62, 60, 1, no, no) \ 4538 SC(229, 62, 60, 2, no, no) \ 4539 SC(230, 62, 60, 3, no, no) \ 4540 4541#define SIZE_CLASSES_DEFINED 4542#define NTBINS 0 4543#define NLBINS 28 4544#define NBINS 35 4545#define NSIZES 231 4546#define LG_TINY_MAXCLASS "NA" 4547#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 4548#define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) 4549#define LG_LARGE_MINCLASS 14 4550#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 4551#endif 4552 4553#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 13) 4554#define SIZE_CLASSES \ 4555 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 4556 SC( 0, 4, 4, 0, yes, 4) \ 4557 SC( 1, 4, 4, 1, yes, 4) \ 4558 SC( 2, 4, 4, 2, yes, 4) \ 4559 SC( 3, 4, 4, 3, yes, 4) \ 4560 \ 4561 SC( 4, 6, 4, 1, yes, 4) \ 4562 SC( 5, 6, 4, 2, yes, 4) \ 4563 SC( 6, 6, 4, 3, yes, 4) \ 4564 SC( 7, 6, 4, 4, yes, 4) \ 4565 \ 4566 SC( 8, 7, 5, 1, yes, 5) \ 4567 SC( 9, 7, 5, 2, yes, 5) \ 4568 SC( 10, 7, 5, 3, yes, 5) \ 4569 SC( 11, 7, 5, 4, yes, 5) \ 4570 \ 4571 SC( 12, 8, 6, 1, yes, 6) \ 4572 SC( 13, 8, 6, 2, yes, 6) \ 4573 SC( 14, 8, 6, 3, yes, 6) \ 4574 SC( 15, 8, 6, 4, yes, 6) \ 4575 \ 4576 SC( 16, 9, 7, 1, yes, 7) \ 4577 SC( 17, 9, 7, 2, yes, 7) \ 4578 SC( 18, 9, 7, 3, yes, 7) \ 4579 SC( 19, 9, 7, 4, yes, 7) \ 4580 \ 4581 SC( 20, 10, 8, 1, yes, 8) \ 4582 SC( 21, 10, 8, 2, yes, 8) \ 4583 SC( 22, 10, 8, 3, yes, 8) \ 4584 SC( 23, 10, 8, 4, yes, 8) \ 4585 \ 4586 SC( 24, 11, 9, 1, yes, 9) \ 4587 SC( 25, 11, 9, 2, yes, 9) \ 4588 SC( 26, 11, 9, 3, yes, 9) \ 4589 SC( 27, 11, 9, 4, yes, 9) \ 4590 \ 4591 SC( 28, 12, 10, 1, yes, no) \ 4592 SC( 29, 12, 10, 2, yes, no) \ 4593 SC( 30, 12, 10, 3, yes, no) \ 4594 SC( 31, 12, 10, 4, yes, no) \ 4595 \ 4596 SC( 32, 13, 11, 1, yes, no) \ 4597 SC( 33, 13, 11, 2, yes, no) \ 4598 SC( 34, 13, 11, 3, yes, no) \ 4599 SC( 35, 13, 11, 4, yes, no) \ 4600 \ 4601 SC( 36, 14, 12, 1, yes, no) \ 4602 SC( 37, 14, 12, 2, yes, no) \ 4603 SC( 38, 14, 12, 3, yes, no) \ 4604 SC( 39, 14, 12, 4, no, no) \ 4605 \ 4606 SC( 40, 15, 13, 1, no, no) \ 4607 SC( 41, 15, 13, 2, no, no) \ 4608 SC( 42, 15, 13, 3, no, no) \ 4609 SC( 43, 15, 13, 4, no, no) \ 4610 \ 4611 SC( 44, 16, 14, 1, no, no) \ 4612 SC( 45, 16, 14, 2, no, no) \ 4613 SC( 46, 16, 14, 3, no, no) \ 4614 SC( 47, 16, 14, 4, no, no) \ 4615 \ 4616 SC( 48, 17, 15, 1, no, no) \ 4617 SC( 49, 17, 15, 2, no, no) \ 4618 SC( 50, 17, 15, 3, no, no) \ 4619 SC( 51, 17, 15, 4, no, no) \ 4620 \ 4621 SC( 52, 18, 16, 1, no, no) \ 4622 SC( 53, 18, 16, 2, no, no) \ 4623 SC( 54, 18, 16, 3, no, no) \ 4624 SC( 55, 18, 16, 4, no, no) \ 4625 \ 4626 SC( 56, 19, 17, 1, no, no) \ 4627 SC( 57, 19, 17, 2, no, no) \ 4628 SC( 58, 19, 17, 3, no, no) \ 4629 SC( 59, 19, 17, 4, no, no) \ 4630 \ 4631 SC( 60, 20, 18, 1, no, no) \ 4632 SC( 61, 20, 18, 2, no, no) \ 4633 SC( 62, 20, 18, 3, no, no) \ 4634 SC( 63, 20, 18, 4, no, no) \ 4635 \ 4636 SC( 64, 21, 19, 1, no, no) \ 4637 SC( 65, 21, 19, 2, no, no) \ 4638 SC( 66, 21, 19, 3, no, no) \ 4639 SC( 67, 21, 19, 4, no, no) \ 4640 \ 4641 SC( 68, 22, 20, 1, no, no) \ 4642 SC( 69, 22, 20, 2, no, no) \ 4643 SC( 70, 22, 20, 3, no, no) \ 4644 SC( 71, 22, 20, 4, no, no) \ 4645 \ 4646 SC( 72, 23, 21, 1, no, no) \ 4647 SC( 73, 23, 21, 2, no, no) \ 4648 SC( 74, 23, 21, 3, no, no) \ 4649 SC( 75, 23, 21, 4, no, no) \ 4650 \ 4651 SC( 76, 24, 22, 1, no, no) \ 4652 SC( 77, 24, 22, 2, no, no) \ 4653 SC( 78, 24, 22, 3, no, no) \ 4654 SC( 79, 24, 22, 4, no, no) \ 4655 \ 4656 SC( 80, 25, 23, 1, no, no) \ 4657 SC( 81, 25, 23, 2, no, no) \ 4658 SC( 82, 25, 23, 3, no, no) \ 4659 SC( 83, 25, 23, 4, no, no) \ 4660 \ 4661 SC( 84, 26, 24, 1, no, no) \ 4662 SC( 85, 26, 24, 2, no, no) \ 4663 SC( 86, 26, 24, 3, no, no) \ 4664 SC( 87, 26, 24, 4, no, no) \ 4665 \ 4666 SC( 88, 27, 25, 1, no, no) \ 4667 SC( 89, 27, 25, 2, no, no) \ 4668 SC( 90, 27, 25, 3, no, no) \ 4669 SC( 91, 27, 25, 4, no, no) \ 4670 \ 4671 SC( 92, 28, 26, 1, no, no) \ 4672 SC( 93, 28, 26, 2, no, no) \ 4673 SC( 94, 28, 26, 3, no, no) \ 4674 SC( 95, 28, 26, 4, no, no) \ 4675 \ 4676 SC( 96, 29, 27, 1, no, no) \ 4677 SC( 97, 29, 27, 2, no, no) \ 4678 SC( 98, 29, 27, 3, no, no) \ 4679 SC( 99, 29, 27, 4, no, no) \ 4680 \ 4681 SC(100, 30, 28, 1, no, no) \ 4682 SC(101, 30, 28, 2, no, no) \ 4683 SC(102, 30, 28, 3, no, no) \ 4684 SC(103, 30, 28, 4, no, no) \ 4685 \ 4686 SC(104, 31, 29, 1, no, no) \ 4687 SC(105, 31, 29, 2, no, no) \ 4688 SC(106, 31, 29, 3, no, no) \ 4689 SC(107, 31, 29, 4, no, no) \ 4690 \ 4691 SC(108, 32, 30, 1, no, no) \ 4692 SC(109, 32, 30, 2, no, no) \ 4693 SC(110, 32, 30, 3, no, no) \ 4694 SC(111, 32, 30, 4, no, no) \ 4695 \ 4696 SC(112, 33, 31, 1, no, no) \ 4697 SC(113, 33, 31, 2, no, no) \ 4698 SC(114, 33, 31, 3, no, no) \ 4699 SC(115, 33, 31, 4, no, no) \ 4700 \ 4701 SC(116, 34, 32, 1, no, no) \ 4702 SC(117, 34, 32, 2, no, no) \ 4703 SC(118, 34, 32, 3, no, no) \ 4704 SC(119, 34, 32, 4, no, no) \ 4705 \ 4706 SC(120, 35, 33, 1, no, no) \ 4707 SC(121, 35, 33, 2, no, no) \ 4708 SC(122, 35, 33, 3, no, no) \ 4709 SC(123, 35, 33, 4, no, no) \ 4710 \ 4711 SC(124, 36, 34, 1, no, no) \ 4712 SC(125, 36, 34, 2, no, no) \ 4713 SC(126, 36, 34, 3, no, no) \ 4714 SC(127, 36, 34, 4, no, no) \ 4715 \ 4716 SC(128, 37, 35, 1, no, no) \ 4717 SC(129, 37, 35, 2, no, no) \ 4718 SC(130, 37, 35, 3, no, no) \ 4719 SC(131, 37, 35, 4, no, no) \ 4720 \ 4721 SC(132, 38, 36, 1, no, no) \ 4722 SC(133, 38, 36, 2, no, no) \ 4723 SC(134, 38, 36, 3, no, no) \ 4724 SC(135, 38, 36, 4, no, no) \ 4725 \ 4726 SC(136, 39, 37, 1, no, no) \ 4727 SC(137, 39, 37, 2, no, no) \ 4728 SC(138, 39, 37, 3, no, no) \ 4729 SC(139, 39, 37, 4, no, no) \ 4730 \ 4731 SC(140, 40, 38, 1, no, no) \ 4732 SC(141, 40, 38, 2, no, no) \ 4733 SC(142, 40, 38, 3, no, no) \ 4734 SC(143, 40, 38, 4, no, no) \ 4735 \ 4736 SC(144, 41, 39, 1, no, no) \ 4737 SC(145, 41, 39, 2, no, no) \ 4738 SC(146, 41, 39, 3, no, no) \ 4739 SC(147, 41, 39, 4, no, no) \ 4740 \ 4741 SC(148, 42, 40, 1, no, no) \ 4742 SC(149, 42, 40, 2, no, no) \ 4743 SC(150, 42, 40, 3, no, no) \ 4744 SC(151, 42, 40, 4, no, no) \ 4745 \ 4746 SC(152, 43, 41, 1, no, no) \ 4747 SC(153, 43, 41, 2, no, no) \ 4748 SC(154, 43, 41, 3, no, no) \ 4749 SC(155, 43, 41, 4, no, no) \ 4750 \ 4751 SC(156, 44, 42, 1, no, no) \ 4752 SC(157, 44, 42, 2, no, no) \ 4753 SC(158, 44, 42, 3, no, no) \ 4754 SC(159, 44, 42, 4, no, no) \ 4755 \ 4756 SC(160, 45, 43, 1, no, no) \ 4757 SC(161, 45, 43, 2, no, no) \ 4758 SC(162, 45, 43, 3, no, no) \ 4759 SC(163, 45, 43, 4, no, no) \ 4760 \ 4761 SC(164, 46, 44, 1, no, no) \ 4762 SC(165, 46, 44, 2, no, no) \ 4763 SC(166, 46, 44, 3, no, no) \ 4764 SC(167, 46, 44, 4, no, no) \ 4765 \ 4766 SC(168, 47, 45, 1, no, no) \ 4767 SC(169, 47, 45, 2, no, no) \ 4768 SC(170, 47, 45, 3, no, no) \ 4769 SC(171, 47, 45, 4, no, no) \ 4770 \ 4771 SC(172, 48, 46, 1, no, no) \ 4772 SC(173, 48, 46, 2, no, no) \ 4773 SC(174, 48, 46, 3, no, no) \ 4774 SC(175, 48, 46, 4, no, no) \ 4775 \ 4776 SC(176, 49, 47, 1, no, no) \ 4777 SC(177, 49, 47, 2, no, no) \ 4778 SC(178, 49, 47, 3, no, no) \ 4779 SC(179, 49, 47, 4, no, no) \ 4780 \ 4781 SC(180, 50, 48, 1, no, no) \ 4782 SC(181, 50, 48, 2, no, no) \ 4783 SC(182, 50, 48, 3, no, no) \ 4784 SC(183, 50, 48, 4, no, no) \ 4785 \ 4786 SC(184, 51, 49, 1, no, no) \ 4787 SC(185, 51, 49, 2, no, no) \ 4788 SC(186, 51, 49, 3, no, no) \ 4789 SC(187, 51, 49, 4, no, no) \ 4790 \ 4791 SC(188, 52, 50, 1, no, no) \ 4792 SC(189, 52, 50, 2, no, no) \ 4793 SC(190, 52, 50, 3, no, no) \ 4794 SC(191, 52, 50, 4, no, no) \ 4795 \ 4796 SC(192, 53, 51, 1, no, no) \ 4797 SC(193, 53, 51, 2, no, no) \ 4798 SC(194, 53, 51, 3, no, no) \ 4799 SC(195, 53, 51, 4, no, no) \ 4800 \ 4801 SC(196, 54, 52, 1, no, no) \ 4802 SC(197, 54, 52, 2, no, no) \ 4803 SC(198, 54, 52, 3, no, no) \ 4804 SC(199, 54, 52, 4, no, no) \ 4805 \ 4806 SC(200, 55, 53, 1, no, no) \ 4807 SC(201, 55, 53, 2, no, no) \ 4808 SC(202, 55, 53, 3, no, no) \ 4809 SC(203, 55, 53, 4, no, no) \ 4810 \ 4811 SC(204, 56, 54, 1, no, no) \ 4812 SC(205, 56, 54, 2, no, no) \ 4813 SC(206, 56, 54, 3, no, no) \ 4814 SC(207, 56, 54, 4, no, no) \ 4815 \ 4816 SC(208, 57, 55, 1, no, no) \ 4817 SC(209, 57, 55, 2, no, no) \ 4818 SC(210, 57, 55, 3, no, no) \ 4819 SC(211, 57, 55, 4, no, no) \ 4820 \ 4821 SC(212, 58, 56, 1, no, no) \ 4822 SC(213, 58, 56, 2, no, no) \ 4823 SC(214, 58, 56, 3, no, no) \ 4824 SC(215, 58, 56, 4, no, no) \ 4825 \ 4826 SC(216, 59, 57, 1, no, no) \ 4827 SC(217, 59, 57, 2, no, no) \ 4828 SC(218, 59, 57, 3, no, no) \ 4829 SC(219, 59, 57, 4, no, no) \ 4830 \ 4831 SC(220, 60, 58, 1, no, no) \ 4832 SC(221, 60, 58, 2, no, no) \ 4833 SC(222, 60, 58, 3, no, no) \ 4834 SC(223, 60, 58, 4, no, no) \ 4835 \ 4836 SC(224, 61, 59, 1, no, no) \ 4837 SC(225, 61, 59, 2, no, no) \ 4838 SC(226, 61, 59, 3, no, no) \ 4839 SC(227, 61, 59, 4, no, no) \ 4840 \ 4841 SC(228, 62, 60, 1, no, no) \ 4842 SC(229, 62, 60, 2, no, no) \ 4843 SC(230, 62, 60, 3, no, no) \ 4844 4845#define SIZE_CLASSES_DEFINED 4846#define NTBINS 0 4847#define NLBINS 28 4848#define NBINS 39 4849#define NSIZES 231 4850#define LG_TINY_MAXCLASS "NA" 4851#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 4852#define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) 4853#define LG_LARGE_MINCLASS 15 4854#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 4855#endif 4856 4857#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 14) 4858#define SIZE_CLASSES \ 4859 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 4860 SC( 0, 4, 4, 0, yes, 4) \ 4861 SC( 1, 4, 4, 1, yes, 4) \ 4862 SC( 2, 4, 4, 2, yes, 4) \ 4863 SC( 3, 4, 4, 3, yes, 4) \ 4864 \ 4865 SC( 4, 6, 4, 1, yes, 4) \ 4866 SC( 5, 6, 4, 2, yes, 4) \ 4867 SC( 6, 6, 4, 3, yes, 4) \ 4868 SC( 7, 6, 4, 4, yes, 4) \ 4869 \ 4870 SC( 8, 7, 5, 1, yes, 5) \ 4871 SC( 9, 7, 5, 2, yes, 5) \ 4872 SC( 10, 7, 5, 3, yes, 5) \ 4873 SC( 11, 7, 5, 4, yes, 5) \ 4874 \ 4875 SC( 12, 8, 6, 1, yes, 6) \ 4876 SC( 13, 8, 6, 2, yes, 6) \ 4877 SC( 14, 8, 6, 3, yes, 6) \ 4878 SC( 15, 8, 6, 4, yes, 6) \ 4879 \ 4880 SC( 16, 9, 7, 1, yes, 7) \ 4881 SC( 17, 9, 7, 2, yes, 7) \ 4882 SC( 18, 9, 7, 3, yes, 7) \ 4883 SC( 19, 9, 7, 4, yes, 7) \ 4884 \ 4885 SC( 20, 10, 8, 1, yes, 8) \ 4886 SC( 21, 10, 8, 2, yes, 8) \ 4887 SC( 22, 10, 8, 3, yes, 8) \ 4888 SC( 23, 10, 8, 4, yes, 8) \ 4889 \ 4890 SC( 24, 11, 9, 1, yes, 9) \ 4891 SC( 25, 11, 9, 2, yes, 9) \ 4892 SC( 26, 11, 9, 3, yes, 9) \ 4893 SC( 27, 11, 9, 4, yes, 9) \ 4894 \ 4895 SC( 28, 12, 10, 1, yes, no) \ 4896 SC( 29, 12, 10, 2, yes, no) \ 4897 SC( 30, 12, 10, 3, yes, no) \ 4898 SC( 31, 12, 10, 4, yes, no) \ 4899 \ 4900 SC( 32, 13, 11, 1, yes, no) \ 4901 SC( 33, 13, 11, 2, yes, no) \ 4902 SC( 34, 13, 11, 3, yes, no) \ 4903 SC( 35, 13, 11, 4, yes, no) \ 4904 \ 4905 SC( 36, 14, 12, 1, yes, no) \ 4906 SC( 37, 14, 12, 2, yes, no) \ 4907 SC( 38, 14, 12, 3, yes, no) \ 4908 SC( 39, 14, 12, 4, yes, no) \ 4909 \ 4910 SC( 40, 15, 13, 1, yes, no) \ 4911 SC( 41, 15, 13, 2, yes, no) \ 4912 SC( 42, 15, 13, 3, yes, no) \ 4913 SC( 43, 15, 13, 4, no, no) \ 4914 \ 4915 SC( 44, 16, 14, 1, no, no) \ 4916 SC( 45, 16, 14, 2, no, no) \ 4917 SC( 46, 16, 14, 3, no, no) \ 4918 SC( 47, 16, 14, 4, no, no) \ 4919 \ 4920 SC( 48, 17, 15, 1, no, no) \ 4921 SC( 49, 17, 15, 2, no, no) \ 4922 SC( 50, 17, 15, 3, no, no) \ 4923 SC( 51, 17, 15, 4, no, no) \ 4924 \ 4925 SC( 52, 18, 16, 1, no, no) \ 4926 SC( 53, 18, 16, 2, no, no) \ 4927 SC( 54, 18, 16, 3, no, no) \ 4928 SC( 55, 18, 16, 4, no, no) \ 4929 \ 4930 SC( 56, 19, 17, 1, no, no) \ 4931 SC( 57, 19, 17, 2, no, no) \ 4932 SC( 58, 19, 17, 3, no, no) \ 4933 SC( 59, 19, 17, 4, no, no) \ 4934 \ 4935 SC( 60, 20, 18, 1, no, no) \ 4936 SC( 61, 20, 18, 2, no, no) \ 4937 SC( 62, 20, 18, 3, no, no) \ 4938 SC( 63, 20, 18, 4, no, no) \ 4939 \ 4940 SC( 64, 21, 19, 1, no, no) \ 4941 SC( 65, 21, 19, 2, no, no) \ 4942 SC( 66, 21, 19, 3, no, no) \ 4943 SC( 67, 21, 19, 4, no, no) \ 4944 \ 4945 SC( 68, 22, 20, 1, no, no) \ 4946 SC( 69, 22, 20, 2, no, no) \ 4947 SC( 70, 22, 20, 3, no, no) \ 4948 SC( 71, 22, 20, 4, no, no) \ 4949 \ 4950 SC( 72, 23, 21, 1, no, no) \ 4951 SC( 73, 23, 21, 2, no, no) \ 4952 SC( 74, 23, 21, 3, no, no) \ 4953 SC( 75, 23, 21, 4, no, no) \ 4954 \ 4955 SC( 76, 24, 22, 1, no, no) \ 4956 SC( 77, 24, 22, 2, no, no) \ 4957 SC( 78, 24, 22, 3, no, no) \ 4958 SC( 79, 24, 22, 4, no, no) \ 4959 \ 4960 SC( 80, 25, 23, 1, no, no) \ 4961 SC( 81, 25, 23, 2, no, no) \ 4962 SC( 82, 25, 23, 3, no, no) \ 4963 SC( 83, 25, 23, 4, no, no) \ 4964 \ 4965 SC( 84, 26, 24, 1, no, no) \ 4966 SC( 85, 26, 24, 2, no, no) \ 4967 SC( 86, 26, 24, 3, no, no) \ 4968 SC( 87, 26, 24, 4, no, no) \ 4969 \ 4970 SC( 88, 27, 25, 1, no, no) \ 4971 SC( 89, 27, 25, 2, no, no) \ 4972 SC( 90, 27, 25, 3, no, no) \ 4973 SC( 91, 27, 25, 4, no, no) \ 4974 \ 4975 SC( 92, 28, 26, 1, no, no) \ 4976 SC( 93, 28, 26, 2, no, no) \ 4977 SC( 94, 28, 26, 3, no, no) \ 4978 SC( 95, 28, 26, 4, no, no) \ 4979 \ 4980 SC( 96, 29, 27, 1, no, no) \ 4981 SC( 97, 29, 27, 2, no, no) \ 4982 SC( 98, 29, 27, 3, no, no) \ 4983 SC( 99, 29, 27, 4, no, no) \ 4984 \ 4985 SC(100, 30, 28, 1, no, no) \ 4986 SC(101, 30, 28, 2, no, no) \ 4987 SC(102, 30, 28, 3, no, no) \ 4988 SC(103, 30, 28, 4, no, no) \ 4989 \ 4990 SC(104, 31, 29, 1, no, no) \ 4991 SC(105, 31, 29, 2, no, no) \ 4992 SC(106, 31, 29, 3, no, no) \ 4993 SC(107, 31, 29, 4, no, no) \ 4994 \ 4995 SC(108, 32, 30, 1, no, no) \ 4996 SC(109, 32, 30, 2, no, no) \ 4997 SC(110, 32, 30, 3, no, no) \ 4998 SC(111, 32, 30, 4, no, no) \ 4999 \ 5000 SC(112, 33, 31, 1, no, no) \ 5001 SC(113, 33, 31, 2, no, no) \ 5002 SC(114, 33, 31, 3, no, no) \ 5003 SC(115, 33, 31, 4, no, no) \ 5004 \ 5005 SC(116, 34, 32, 1, no, no) \ 5006 SC(117, 34, 32, 2, no, no) \ 5007 SC(118, 34, 32, 3, no, no) \ 5008 SC(119, 34, 32, 4, no, no) \ 5009 \ 5010 SC(120, 35, 33, 1, no, no) \ 5011 SC(121, 35, 33, 2, no, no) \ 5012 SC(122, 35, 33, 3, no, no) \ 5013 SC(123, 35, 33, 4, no, no) \ 5014 \ 5015 SC(124, 36, 34, 1, no, no) \ 5016 SC(125, 36, 34, 2, no, no) \ 5017 SC(126, 36, 34, 3, no, no) \ 5018 SC(127, 36, 34, 4, no, no) \ 5019 \ 5020 SC(128, 37, 35, 1, no, no) \ 5021 SC(129, 37, 35, 2, no, no) \ 5022 SC(130, 37, 35, 3, no, no) \ 5023 SC(131, 37, 35, 4, no, no) \ 5024 \ 5025 SC(132, 38, 36, 1, no, no) \ 5026 SC(133, 38, 36, 2, no, no) \ 5027 SC(134, 38, 36, 3, no, no) \ 5028 SC(135, 38, 36, 4, no, no) \ 5029 \ 5030 SC(136, 39, 37, 1, no, no) \ 5031 SC(137, 39, 37, 2, no, no) \ 5032 SC(138, 39, 37, 3, no, no) \ 5033 SC(139, 39, 37, 4, no, no) \ 5034 \ 5035 SC(140, 40, 38, 1, no, no) \ 5036 SC(141, 40, 38, 2, no, no) \ 5037 SC(142, 40, 38, 3, no, no) \ 5038 SC(143, 40, 38, 4, no, no) \ 5039 \ 5040 SC(144, 41, 39, 1, no, no) \ 5041 SC(145, 41, 39, 2, no, no) \ 5042 SC(146, 41, 39, 3, no, no) \ 5043 SC(147, 41, 39, 4, no, no) \ 5044 \ 5045 SC(148, 42, 40, 1, no, no) \ 5046 SC(149, 42, 40, 2, no, no) \ 5047 SC(150, 42, 40, 3, no, no) \ 5048 SC(151, 42, 40, 4, no, no) \ 5049 \ 5050 SC(152, 43, 41, 1, no, no) \ 5051 SC(153, 43, 41, 2, no, no) \ 5052 SC(154, 43, 41, 3, no, no) \ 5053 SC(155, 43, 41, 4, no, no) \ 5054 \ 5055 SC(156, 44, 42, 1, no, no) \ 5056 SC(157, 44, 42, 2, no, no) \ 5057 SC(158, 44, 42, 3, no, no) \ 5058 SC(159, 44, 42, 4, no, no) \ 5059 \ 5060 SC(160, 45, 43, 1, no, no) \ 5061 SC(161, 45, 43, 2, no, no) \ 5062 SC(162, 45, 43, 3, no, no) \ 5063 SC(163, 45, 43, 4, no, no) \ 5064 \ 5065 SC(164, 46, 44, 1, no, no) \ 5066 SC(165, 46, 44, 2, no, no) \ 5067 SC(166, 46, 44, 3, no, no) \ 5068 SC(167, 46, 44, 4, no, no) \ 5069 \ 5070 SC(168, 47, 45, 1, no, no) \ 5071 SC(169, 47, 45, 2, no, no) \ 5072 SC(170, 47, 45, 3, no, no) \ 5073 SC(171, 47, 45, 4, no, no) \ 5074 \ 5075 SC(172, 48, 46, 1, no, no) \ 5076 SC(173, 48, 46, 2, no, no) \ 5077 SC(174, 48, 46, 3, no, no) \ 5078 SC(175, 48, 46, 4, no, no) \ 5079 \ 5080 SC(176, 49, 47, 1, no, no) \ 5081 SC(177, 49, 47, 2, no, no) \ 5082 SC(178, 49, 47, 3, no, no) \ 5083 SC(179, 49, 47, 4, no, no) \ 5084 \ 5085 SC(180, 50, 48, 1, no, no) \ 5086 SC(181, 50, 48, 2, no, no) \ 5087 SC(182, 50, 48, 3, no, no) \ 5088 SC(183, 50, 48, 4, no, no) \ 5089 \ 5090 SC(184, 51, 49, 1, no, no) \ 5091 SC(185, 51, 49, 2, no, no) \ 5092 SC(186, 51, 49, 3, no, no) \ 5093 SC(187, 51, 49, 4, no, no) \ 5094 \ 5095 SC(188, 52, 50, 1, no, no) \ 5096 SC(189, 52, 50, 2, no, no) \ 5097 SC(190, 52, 50, 3, no, no) \ 5098 SC(191, 52, 50, 4, no, no) \ 5099 \ 5100 SC(192, 53, 51, 1, no, no) \ 5101 SC(193, 53, 51, 2, no, no) \ 5102 SC(194, 53, 51, 3, no, no) \ 5103 SC(195, 53, 51, 4, no, no) \ 5104 \ 5105 SC(196, 54, 52, 1, no, no) \ 5106 SC(197, 54, 52, 2, no, no) \ 5107 SC(198, 54, 52, 3, no, no) \ 5108 SC(199, 54, 52, 4, no, no) \ 5109 \ 5110 SC(200, 55, 53, 1, no, no) \ 5111 SC(201, 55, 53, 2, no, no) \ 5112 SC(202, 55, 53, 3, no, no) \ 5113 SC(203, 55, 53, 4, no, no) \ 5114 \ 5115 SC(204, 56, 54, 1, no, no) \ 5116 SC(205, 56, 54, 2, no, no) \ 5117 SC(206, 56, 54, 3, no, no) \ 5118 SC(207, 56, 54, 4, no, no) \ 5119 \ 5120 SC(208, 57, 55, 1, no, no) \ 5121 SC(209, 57, 55, 2, no, no) \ 5122 SC(210, 57, 55, 3, no, no) \ 5123 SC(211, 57, 55, 4, no, no) \ 5124 \ 5125 SC(212, 58, 56, 1, no, no) \ 5126 SC(213, 58, 56, 2, no, no) \ 5127 SC(214, 58, 56, 3, no, no) \ 5128 SC(215, 58, 56, 4, no, no) \ 5129 \ 5130 SC(216, 59, 57, 1, no, no) \ 5131 SC(217, 59, 57, 2, no, no) \ 5132 SC(218, 59, 57, 3, no, no) \ 5133 SC(219, 59, 57, 4, no, no) \ 5134 \ 5135 SC(220, 60, 58, 1, no, no) \ 5136 SC(221, 60, 58, 2, no, no) \ 5137 SC(222, 60, 58, 3, no, no) \ 5138 SC(223, 60, 58, 4, no, no) \ 5139 \ 5140 SC(224, 61, 59, 1, no, no) \ 5141 SC(225, 61, 59, 2, no, no) \ 5142 SC(226, 61, 59, 3, no, no) \ 5143 SC(227, 61, 59, 4, no, no) \ 5144 \ 5145 SC(228, 62, 60, 1, no, no) \ 5146 SC(229, 62, 60, 2, no, no) \ 5147 SC(230, 62, 60, 3, no, no) \ 5148 5149#define SIZE_CLASSES_DEFINED 5150#define NTBINS 0 5151#define NLBINS 28 5152#define NBINS 43 5153#define NSIZES 231 5154#define LG_TINY_MAXCLASS "NA" 5155#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 5156#define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) 5157#define LG_LARGE_MINCLASS 16 5158#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 5159#endif 5160 5161#if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 16) 5162#define SIZE_CLASSES \ 5163 /* index, lg_grp, lg_delta, ndelta, bin, lg_delta_lookup */ \ 5164 SC( 0, 4, 4, 0, yes, 4) \ 5165 SC( 1, 4, 4, 1, yes, 4) \ 5166 SC( 2, 4, 4, 2, yes, 4) \ 5167 SC( 3, 4, 4, 3, yes, 4) \ 5168 \ 5169 SC( 4, 6, 4, 1, yes, 4) \ 5170 SC( 5, 6, 4, 2, yes, 4) \ 5171 SC( 6, 6, 4, 3, yes, 4) \ 5172 SC( 7, 6, 4, 4, yes, 4) \ 5173 \ 5174 SC( 8, 7, 5, 1, yes, 5) \ 5175 SC( 9, 7, 5, 2, yes, 5) \ 5176 SC( 10, 7, 5, 3, yes, 5) \ 5177 SC( 11, 7, 5, 4, yes, 5) \ 5178 \ 5179 SC( 12, 8, 6, 1, yes, 6) \ 5180 SC( 13, 8, 6, 2, yes, 6) \ 5181 SC( 14, 8, 6, 3, yes, 6) \ 5182 SC( 15, 8, 6, 4, yes, 6) \ 5183 \ 5184 SC( 16, 9, 7, 1, yes, 7) \ 5185 SC( 17, 9, 7, 2, yes, 7) \ 5186 SC( 18, 9, 7, 3, yes, 7) \ 5187 SC( 19, 9, 7, 4, yes, 7) \ 5188 \ 5189 SC( 20, 10, 8, 1, yes, 8) \ 5190 SC( 21, 10, 8, 2, yes, 8) \ 5191 SC( 22, 10, 8, 3, yes, 8) \ 5192 SC( 23, 10, 8, 4, yes, 8) \ 5193 \ 5194 SC( 24, 11, 9, 1, yes, 9) \ 5195 SC( 25, 11, 9, 2, yes, 9) \ 5196 SC( 26, 11, 9, 3, yes, 9) \ 5197 SC( 27, 11, 9, 4, yes, 9) \ 5198 \ 5199 SC( 28, 12, 10, 1, yes, no) \ 5200 SC( 29, 12, 10, 2, yes, no) \ 5201 SC( 30, 12, 10, 3, yes, no) \ 5202 SC( 31, 12, 10, 4, yes, no) \ 5203 \ 5204 SC( 32, 13, 11, 1, yes, no) \ 5205 SC( 33, 13, 11, 2, yes, no) \ 5206 SC( 34, 13, 11, 3, yes, no) \ 5207 SC( 35, 13, 11, 4, yes, no) \ 5208 \ 5209 SC( 36, 14, 12, 1, yes, no) \ 5210 SC( 37, 14, 12, 2, yes, no) \ 5211 SC( 38, 14, 12, 3, yes, no) \ 5212 SC( 39, 14, 12, 4, yes, no) \ 5213 \ 5214 SC( 40, 15, 13, 1, yes, no) \ 5215 SC( 41, 15, 13, 2, yes, no) \ 5216 SC( 42, 15, 13, 3, yes, no) \ 5217 SC( 43, 15, 13, 4, yes, no) \ 5218 \ 5219 SC( 44, 16, 14, 1, yes, no) \ 5220 SC( 45, 16, 14, 2, yes, no) \ 5221 SC( 46, 16, 14, 3, yes, no) \ 5222 SC( 47, 16, 14, 4, yes, no) \ 5223 \ 5224 SC( 48, 17, 15, 1, yes, no) \ 5225 SC( 49, 17, 15, 2, yes, no) \ 5226 SC( 50, 17, 15, 3, yes, no) \ 5227 SC( 51, 17, 15, 4, no, no) \ 5228 \ 5229 SC( 52, 18, 16, 1, no, no) \ 5230 SC( 53, 18, 16, 2, no, no) \ 5231 SC( 54, 18, 16, 3, no, no) \ 5232 SC( 55, 18, 16, 4, no, no) \ 5233 \ 5234 SC( 56, 19, 17, 1, no, no) \ 5235 SC( 57, 19, 17, 2, no, no) \ 5236 SC( 58, 19, 17, 3, no, no) \ 5237 SC( 59, 19, 17, 4, no, no) \ 5238 \ 5239 SC( 60, 20, 18, 1, no, no) \ 5240 SC( 61, 20, 18, 2, no, no) \ 5241 SC( 62, 20, 18, 3, no, no) \ 5242 SC( 63, 20, 18, 4, no, no) \ 5243 \ 5244 SC( 64, 21, 19, 1, no, no) \ 5245 SC( 65, 21, 19, 2, no, no) \ 5246 SC( 66, 21, 19, 3, no, no) \ 5247 SC( 67, 21, 19, 4, no, no) \ 5248 \ 5249 SC( 68, 22, 20, 1, no, no) \ 5250 SC( 69, 22, 20, 2, no, no) \ 5251 SC( 70, 22, 20, 3, no, no) \ 5252 SC( 71, 22, 20, 4, no, no) \ 5253 \ 5254 SC( 72, 23, 21, 1, no, no) \ 5255 SC( 73, 23, 21, 2, no, no) \ 5256 SC( 74, 23, 21, 3, no, no) \ 5257 SC( 75, 23, 21, 4, no, no) \ 5258 \ 5259 SC( 76, 24, 22, 1, no, no) \ 5260 SC( 77, 24, 22, 2, no, no) \ 5261 SC( 78, 24, 22, 3, no, no) \ 5262 SC( 79, 24, 22, 4, no, no) \ 5263 \ 5264 SC( 80, 25, 23, 1, no, no) \ 5265 SC( 81, 25, 23, 2, no, no) \ 5266 SC( 82, 25, 23, 3, no, no) \ 5267 SC( 83, 25, 23, 4, no, no) \ 5268 \ 5269 SC( 84, 26, 24, 1, no, no) \ 5270 SC( 85, 26, 24, 2, no, no) \ 5271 SC( 86, 26, 24, 3, no, no) \ 5272 SC( 87, 26, 24, 4, no, no) \ 5273 \ 5274 SC( 88, 27, 25, 1, no, no) \ 5275 SC( 89, 27, 25, 2, no, no) \ 5276 SC( 90, 27, 25, 3, no, no) \ 5277 SC( 91, 27, 25, 4, no, no) \ 5278 \ 5279 SC( 92, 28, 26, 1, no, no) \ 5280 SC( 93, 28, 26, 2, no, no) \ 5281 SC( 94, 28, 26, 3, no, no) \ 5282 SC( 95, 28, 26, 4, no, no) \ 5283 \ 5284 SC( 96, 29, 27, 1, no, no) \ 5285 SC( 97, 29, 27, 2, no, no) \ 5286 SC( 98, 29, 27, 3, no, no) \ 5287 SC( 99, 29, 27, 4, no, no) \ 5288 \ 5289 SC(100, 30, 28, 1, no, no) \ 5290 SC(101, 30, 28, 2, no, no) \ 5291 SC(102, 30, 28, 3, no, no) \ 5292 SC(103, 30, 28, 4, no, no) \ 5293 \ 5294 SC(104, 31, 29, 1, no, no) \ 5295 SC(105, 31, 29, 2, no, no) \ 5296 SC(106, 31, 29, 3, no, no) \ 5297 SC(107, 31, 29, 4, no, no) \ 5298 \ 5299 SC(108, 32, 30, 1, no, no) \ 5300 SC(109, 32, 30, 2, no, no) \ 5301 SC(110, 32, 30, 3, no, no) \ 5302 SC(111, 32, 30, 4, no, no) \ 5303 \ 5304 SC(112, 33, 31, 1, no, no) \ 5305 SC(113, 33, 31, 2, no, no) \ 5306 SC(114, 33, 31, 3, no, no) \ 5307 SC(115, 33, 31, 4, no, no) \ 5308 \ 5309 SC(116, 34, 32, 1, no, no) \ 5310 SC(117, 34, 32, 2, no, no) \ 5311 SC(118, 34, 32, 3, no, no) \ 5312 SC(119, 34, 32, 4, no, no) \ 5313 \ 5314 SC(120, 35, 33, 1, no, no) \ 5315 SC(121, 35, 33, 2, no, no) \ 5316 SC(122, 35, 33, 3, no, no) \ 5317 SC(123, 35, 33, 4, no, no) \ 5318 \ 5319 SC(124, 36, 34, 1, no, no) \ 5320 SC(125, 36, 34, 2, no, no) \ 5321 SC(126, 36, 34, 3, no, no) \ 5322 SC(127, 36, 34, 4, no, no) \ 5323 \ 5324 SC(128, 37, 35, 1, no, no) \ 5325 SC(129, 37, 35, 2, no, no) \ 5326 SC(130, 37, 35, 3, no, no) \ 5327 SC(131, 37, 35, 4, no, no) \ 5328 \ 5329 SC(132, 38, 36, 1, no, no) \ 5330 SC(133, 38, 36, 2, no, no) \ 5331 SC(134, 38, 36, 3, no, no) \ 5332 SC(135, 38, 36, 4, no, no) \ 5333 \ 5334 SC(136, 39, 37, 1, no, no) \ 5335 SC(137, 39, 37, 2, no, no) \ 5336 SC(138, 39, 37, 3, no, no) \ 5337 SC(139, 39, 37, 4, no, no) \ 5338 \ 5339 SC(140, 40, 38, 1, no, no) \ 5340 SC(141, 40, 38, 2, no, no) \ 5341 SC(142, 40, 38, 3, no, no) \ 5342 SC(143, 40, 38, 4, no, no) \ 5343 \ 5344 SC(144, 41, 39, 1, no, no) \ 5345 SC(145, 41, 39, 2, no, no) \ 5346 SC(146, 41, 39, 3, no, no) \ 5347 SC(147, 41, 39, 4, no, no) \ 5348 \ 5349 SC(148, 42, 40, 1, no, no) \ 5350 SC(149, 42, 40, 2, no, no) \ 5351 SC(150, 42, 40, 3, no, no) \ 5352 SC(151, 42, 40, 4, no, no) \ 5353 \ 5354 SC(152, 43, 41, 1, no, no) \ 5355 SC(153, 43, 41, 2, no, no) \ 5356 SC(154, 43, 41, 3, no, no) \ 5357 SC(155, 43, 41, 4, no, no) \ 5358 \ 5359 SC(156, 44, 42, 1, no, no) \ 5360 SC(157, 44, 42, 2, no, no) \ 5361 SC(158, 44, 42, 3, no, no) \ 5362 SC(159, 44, 42, 4, no, no) \ 5363 \ 5364 SC(160, 45, 43, 1, no, no) \ 5365 SC(161, 45, 43, 2, no, no) \ 5366 SC(162, 45, 43, 3, no, no) \ 5367 SC(163, 45, 43, 4, no, no) \ 5368 \ 5369 SC(164, 46, 44, 1, no, no) \ 5370 SC(165, 46, 44, 2, no, no) \ 5371 SC(166, 46, 44, 3, no, no) \ 5372 SC(167, 46, 44, 4, no, no) \ 5373 \ 5374 SC(168, 47, 45, 1, no, no) \ 5375 SC(169, 47, 45, 2, no, no) \ 5376 SC(170, 47, 45, 3, no, no) \ 5377 SC(171, 47, 45, 4, no, no) \ 5378 \ 5379 SC(172, 48, 46, 1, no, no) \ 5380 SC(173, 48, 46, 2, no, no) \ 5381 SC(174, 48, 46, 3, no, no) \ 5382 SC(175, 48, 46, 4, no, no) \ 5383 \ 5384 SC(176, 49, 47, 1, no, no) \ 5385 SC(177, 49, 47, 2, no, no) \ 5386 SC(178, 49, 47, 3, no, no) \ 5387 SC(179, 49, 47, 4, no, no) \ 5388 \ 5389 SC(180, 50, 48, 1, no, no) \ 5390 SC(181, 50, 48, 2, no, no) \ 5391 SC(182, 50, 48, 3, no, no) \ 5392 SC(183, 50, 48, 4, no, no) \ 5393 \ 5394 SC(184, 51, 49, 1, no, no) \ 5395 SC(185, 51, 49, 2, no, no) \ 5396 SC(186, 51, 49, 3, no, no) \ 5397 SC(187, 51, 49, 4, no, no) \ 5398 \ 5399 SC(188, 52, 50, 1, no, no) \ 5400 SC(189, 52, 50, 2, no, no) \ 5401 SC(190, 52, 50, 3, no, no) \ 5402 SC(191, 52, 50, 4, no, no) \ 5403 \ 5404 SC(192, 53, 51, 1, no, no) \ 5405 SC(193, 53, 51, 2, no, no) \ 5406 SC(194, 53, 51, 3, no, no) \ 5407 SC(195, 53, 51, 4, no, no) \ 5408 \ 5409 SC(196, 54, 52, 1, no, no) \ 5410 SC(197, 54, 52, 2, no, no) \ 5411 SC(198, 54, 52, 3, no, no) \ 5412 SC(199, 54, 52, 4, no, no) \ 5413 \ 5414 SC(200, 55, 53, 1, no, no) \ 5415 SC(201, 55, 53, 2, no, no) \ 5416 SC(202, 55, 53, 3, no, no) \ 5417 SC(203, 55, 53, 4, no, no) \ 5418 \ 5419 SC(204, 56, 54, 1, no, no) \ 5420 SC(205, 56, 54, 2, no, no) \ 5421 SC(206, 56, 54, 3, no, no) \ 5422 SC(207, 56, 54, 4, no, no) \ 5423 \ 5424 SC(208, 57, 55, 1, no, no) \ 5425 SC(209, 57, 55, 2, no, no) \ 5426 SC(210, 57, 55, 3, no, no) \ 5427 SC(211, 57, 55, 4, no, no) \ 5428 \ 5429 SC(212, 58, 56, 1, no, no) \ 5430 SC(213, 58, 56, 2, no, no) \ 5431 SC(214, 58, 56, 3, no, no) \ 5432 SC(215, 58, 56, 4, no, no) \ 5433 \ 5434 SC(216, 59, 57, 1, no, no) \ 5435 SC(217, 59, 57, 2, no, no) \ 5436 SC(218, 59, 57, 3, no, no) \ 5437 SC(219, 59, 57, 4, no, no) \ 5438 \ 5439 SC(220, 60, 58, 1, no, no) \ 5440 SC(221, 60, 58, 2, no, no) \ 5441 SC(222, 60, 58, 3, no, no) \ 5442 SC(223, 60, 58, 4, no, no) \ 5443 \ 5444 SC(224, 61, 59, 1, no, no) \ 5445 SC(225, 61, 59, 2, no, no) \ 5446 SC(226, 61, 59, 3, no, no) \ 5447 SC(227, 61, 59, 4, no, no) \ 5448 \ 5449 SC(228, 62, 60, 1, no, no) \ 5450 SC(229, 62, 60, 2, no, no) \ 5451 SC(230, 62, 60, 3, no, no) \ 5452 5453#define SIZE_CLASSES_DEFINED 5454#define NTBINS 0 5455#define NLBINS 28 5456#define NBINS 51 5457#define NSIZES 231 5458#define LG_TINY_MAXCLASS "NA" 5459#define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) 5460#define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) 5461#define LG_LARGE_MINCLASS 18 5462#define HUGE_MAXCLASS ((((size_t)1) << 62) + (((size_t)3) << 60)) 5463#endif 5464 5465#ifndef SIZE_CLASSES_DEFINED 5466# error "No size class definitions match configuration" 5467#endif 5468#undef SIZE_CLASSES_DEFINED 5469/* 5470 * The size2index_tab lookup table uses uint8_t to encode each bin index, so we 5471 * cannot support more than 256 small size classes. Further constrain NBINS to 5472 * 255 since all small size classes, plus a "not small" size class must be 5473 * stored in 8 bits of arena_chunk_map_bits_t's bits field. 5474 */ 5475#if (NBINS > 255) 5476# error "Too many small size classes" 5477#endif 5478 5479#endif /* JEMALLOC_H_TYPES */ 5480/******************************************************************************/ 5481#ifdef JEMALLOC_H_STRUCTS 5482 5483 5484#endif /* JEMALLOC_H_STRUCTS */ 5485/******************************************************************************/ 5486#ifdef JEMALLOC_H_EXTERNS 5487 5488 5489#endif /* JEMALLOC_H_EXTERNS */ 5490/******************************************************************************/ 5491#ifdef JEMALLOC_H_INLINES 5492 5493 5494#endif /* JEMALLOC_H_INLINES */ 5495/******************************************************************************/ 5496