11#define _POSIX_SOURCE 1
16#include "omalloc/omConfig.h"
17#include "omalloc/omDerivedConfig.h"
22#if SIZEOF_SYSTEM_PAGE > 4096
23#define MIN_BIN_BLOCKS 8
26#define MIN_BIN_BLOCKS 4
31#define OM_MAX_BLOCK_SIZE ((SIZEOF_OM_BIN_PAGE / MIN_BIN_BLOCKS) & ~(SIZEOF_STRICT_ALIGNMENT - 1))
39 80, 96, 112, 128, 144,
68 printf(
"omBin om_Size2%sBin[/*%ld*/] = {\n",
74 printf(
"&om_Static%sBin[%ld], /* %ld */ \n", (
track?
"Track" :
""),
i,
j);
78 printf(
"&om_Static%sBin[%ld] /* %ld */};\n\n", (
track?
"Track" :
""),
i,
j);
89 printf(
"omBin om_Size2%sBin[/*%ld*/] = {\n",
96 printf(
"&om_Static%sBin[%ld], /* %ld */ \n", (
track ?
"Track" :
""),
i,
j);
104 printf(
"&om_Static%sBin[%ld] /* %ld */};\n\n", (
track ?
"Track" :
""),
i,
j);
114 printf(
"{om_ZeroPage, NULL, NULL, %ld, %ld, 0},\n",
118 printf(
"{om_ZeroPage, NULL, NULL, %ld, %ld, 0}\n};\n\n",
140#ifdef OM_ALIGNMENT_NEEDS_WORK
150#ifdef OM_ALIGNMENT_NEEDS_WORK
169#ifdef OM_HAVE_DENSE_BIN_DISTRIBUTION
179"#ifndef OM_TABLES_INC\n"
180"#define OM_TABLES_INC\n"
188#ifdef OM_ALIGNMENT_NEEDS_WORK
192 printf(
"\n#ifdef OM_HAVE_TRACK\n");
196#ifdef OM_ALIGNMENT_NEEDS_WORK
201 printf(
"\n#endif /* OM_HAVE_TRACK */\n");
203 printf(
"\n#endif /* OM_TABLES_INC */\n");
#define SIZEOF_OM_BIN_PAGE
void OutputSize2Bin(size_t *binSize, size_t max_block_size, int track)
int GetMaxBlockThreshold()
void OutputStaticBin(size_t *binSize, int max_bin_index, int track)
size_t om_BinSize[SIZEOF_OM_BIN_PAGE/MIN_BIN_BLOCKS]
void OutputSize2AlignedBin(size_t *binSize, size_t max_block_size, int track)
#define OM_MAX_BLOCK_SIZE