• Tim Peters's avatar
    In a PYMALLOC_DEBUG build obmalloc adds extra debugging info · 9ea89d2a
    Tim Peters yazdı
    to each allocated block.  This was using 4 bytes for each such
    piece of info regardless of platform.  This didn't really matter
    before (proof: no bug reports, and the debug-build obmalloc would
    have assert-failed if it was ever asked for a chunk of memory
    >= 2**32 bytes), since container indices were plain ints.  But after
    the Py_ssize_t changes, it's at least theoretically possible to
    allocate a list or string whose guts exceed 2**32 bytes, and the
    PYMALLOC_DEBUG routines would fail then (having only 4 bytes
    to record the originally requested size).
    
    Now we use sizeof(size_t) bytes for each of a PYMALLOC_DEBUG
    build's extra debugging fields.  This won't make any difference
    on 32-bit boxes, but will add 16 bytes to each allocation in
    a debug build on a 64-bit box.
    9ea89d2a
SpecialBuilds.txt 11.9 KB