Home | History | Annotate | Download | only in mjsunit

Lines Matching refs:bin

5359 "    An array of bin headers for free chunks. Each bin is doubly\n" +
5385 " To simplify use in double-linked lists, each bin header acts\n" +
5397 "/* analog of ++bin */\n" +
5404 "/* Take a chunk off a bin list */\n" +
5424 " 1 bin of size what's left\n" +
5486 " first bin that is maintained in sorted order. This must\n" +
5487 " be the smallest size corresponding to a given bin.\n" +
5492 " non-best-fitting by up to the width of the bin.\n" +
5510 " are first placed in the \"unsorted\" bin. They are then placed\n" +
5517 "/* The otherwise unindexable 1-bin is used to hold unsorted chunks. */\n" +
5525 " any bin, is used only if no other chunk is available, and is\n" +
5528 " points to its own bin with initial zero size, thus forcing\n" +
5532 " initial_top treat the bin as a legal but unusable chunk during the\n" +
5538 "/* Conveniently, the unsorted bin can be used as dummy top on first call */\n" +
5545 " structure is used for bin-by-bin searching. `binmap' is a\n" +
5613 " bin.\n" +
5677 " /* Base of the topmost chunk -- not otherwise kept in a bin */\n" +
5752 " mbinptr bin;\n" +
5756 " bin = bin_at(av,i);\n" +
5757 " bin->fd = bin->bk = bin;\n" +
6063 " /* chunk belongs in this bin */\n" +
6078 " /* binmap is accurate (except for bin 1 == unsorted_chunks) */\n" +
6095 " /* chunk belongs in bin */\n" +
6657 " unsigned int idx; /* associated bin index */\n" +
6658 " mbinptr bin; /* associated bin */\n" +
6663 " int victim_index; /* its bin index */\n" +
6697 " If the size qualifies as a fastbin, first check corresponding bin.\n" +
6710 " If a small request, check regular bin. Since these \"smallbins\"\n" +
6719 " bin = bin_at(av,idx);\n" +
6721 " if ( (victim = last(bin)) != bin) {\n" +
6724 " bin->bk = bck;\n" +
6725 " bck->fd = bin;\n" +
6763 " only chunk in unsorted bin. This helps promote locality for\n" +
6801 " /* place chunk in bin */\n" +
6839 " If a large request, scan through the chunks of current bin to\n" +
6849 " bin = bin_at(av, idx);\n" +
6851 " for (victim = last(bin); victim != bin; victim = victim->bk) {\n" +
6881 " bin. This search is strictly by best-fit; i.e., the smallest\n" +
6889 " bin = bin_at(av,idx);\n" +
6903 " bin = bin_at(av, (block << BINMAPSHIFT));\n" +
6907 " /* Advance to bin with set bit. There must be one. */\n" +
6909 " bin = next_bin(bin);\n" +
6914 " /* Inspect the bin. It is likely to be non-empty */\n" +
6915 " victim = last(bin);\n" +
6917 " /* If a false alarm (empty bin), clear the bit. */\n" +
6918 " if (victim == bin) {\n" +
6920 " bin = next_bin(bin);\n" +
6927 " /* We know the first chunk in this bin is big enough to use. */\n" +
6934 " bin->bk = bck;\n" +
6935 " bck->fd = bin;\n" +
7183 " mchunkptr unsorted_bin; /* bin header */\n" +
7206 " Remove each chunk from fast bin and consolidate it, placing it\n" +
7207 " then in unsorted bin. Among other reasons for doing this,\n" +
7208 " placing in unsorted bin avoids needing to calculate actual bins\n" +