mirror of
https://github.com/python/cpython.git
synced 2025-09-27 02:39:58 +00:00
Issue #4850: Change COUNT_ALLOCS variables to Py_ssize_t.
This commit is contained in:
parent
e6dc53120d
commit
b90304acb9
5 changed files with 20 additions and 12 deletions
|
@ -12,6 +12,8 @@ What's New in Python 2.7 alpha 1
|
||||||
Core and Builtins
|
Core and Builtins
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
- Issue #4850: Change COUNT_ALLOCS variables to Py_ssize_t.
|
||||||
|
|
||||||
- Issue #1180193: When importing a module from a .pyc (or .pyo) file with
|
- Issue #1180193: When importing a module from a .pyc (or .pyo) file with
|
||||||
an existing .py counterpart, override the co_filename attributes of all
|
an existing .py counterpart, override the co_filename attributes of all
|
||||||
code objects if the original filename is obsolete (which can happen if the
|
code objects if the original filename is obsolete (which can happen if the
|
||||||
|
|
|
@ -78,7 +78,8 @@ fill_free_list(void)
|
||||||
static PyIntObject *small_ints[NSMALLNEGINTS + NSMALLPOSINTS];
|
static PyIntObject *small_ints[NSMALLNEGINTS + NSMALLPOSINTS];
|
||||||
#endif
|
#endif
|
||||||
#ifdef COUNT_ALLOCS
|
#ifdef COUNT_ALLOCS
|
||||||
int quick_int_allocs, quick_neg_int_allocs;
|
Py_ssize_t quick_int_allocs;
|
||||||
|
Py_ssize_t quick_neg_int_allocs;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
|
|
|
@ -81,24 +81,29 @@ static PyTypeObject *type_list;
|
||||||
garbage itself. If unlist_types_without_objects
|
garbage itself. If unlist_types_without_objects
|
||||||
is set, they will be removed from the type_list
|
is set, they will be removed from the type_list
|
||||||
once the last object is deallocated. */
|
once the last object is deallocated. */
|
||||||
int unlist_types_without_objects;
|
static int unlist_types_without_objects;
|
||||||
extern int tuple_zero_allocs, fast_tuple_allocs;
|
extern Py_ssize_t tuple_zero_allocs, fast_tuple_allocs;
|
||||||
extern int quick_int_allocs, quick_neg_int_allocs;
|
extern Py_ssize_t quick_int_allocs, quick_neg_int_allocs;
|
||||||
extern int null_strings, one_strings;
|
extern Py_ssize_t null_strings, one_strings;
|
||||||
void
|
void
|
||||||
dump_counts(FILE* f)
|
dump_counts(FILE* f)
|
||||||
{
|
{
|
||||||
PyTypeObject *tp;
|
PyTypeObject *tp;
|
||||||
|
|
||||||
for (tp = type_list; tp; tp = tp->tp_next)
|
for (tp = type_list; tp; tp = tp->tp_next)
|
||||||
fprintf(f, "%s alloc'd: %d, freed: %d, max in use: %d\n",
|
fprintf(f, "%s alloc'd: %" PY_FORMAT_SIZE_T "d, "
|
||||||
|
"freed: %" PY_FORMAT_SIZE_T "d, "
|
||||||
|
"max in use: %" PY_FORMAT_SIZE_T "d\n",
|
||||||
tp->tp_name, tp->tp_allocs, tp->tp_frees,
|
tp->tp_name, tp->tp_allocs, tp->tp_frees,
|
||||||
tp->tp_maxalloc);
|
tp->tp_maxalloc);
|
||||||
fprintf(f, "fast tuple allocs: %d, empty: %d\n",
|
fprintf(f, "fast tuple allocs: %" PY_FORMAT_SIZE_T "d, "
|
||||||
|
"empty: %" PY_FORMAT_SIZE_T "d\n",
|
||||||
fast_tuple_allocs, tuple_zero_allocs);
|
fast_tuple_allocs, tuple_zero_allocs);
|
||||||
fprintf(f, "fast int allocs: pos: %d, neg: %d\n",
|
fprintf(f, "fast int allocs: pos: %" PY_FORMAT_SIZE_T "d, "
|
||||||
|
"neg: %" PY_FORMAT_SIZE_T "d\n",
|
||||||
quick_int_allocs, quick_neg_int_allocs);
|
quick_int_allocs, quick_neg_int_allocs);
|
||||||
fprintf(f, "null strings: %d, 1-strings: %d\n",
|
fprintf(f, "null strings: %" PY_FORMAT_SIZE_T "d, "
|
||||||
|
"1-strings: %" PY_FORMAT_SIZE_T "d\n",
|
||||||
null_strings, one_strings);
|
null_strings, one_strings);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
|
||||||
#ifdef COUNT_ALLOCS
|
#ifdef COUNT_ALLOCS
|
||||||
int null_strings, one_strings;
|
Py_ssize_t null_strings, one_strings;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static PyStringObject *characters[UCHAR_MAX + 1];
|
static PyStringObject *characters[UCHAR_MAX + 1];
|
||||||
|
|
|
@ -19,8 +19,8 @@ static PyTupleObject *free_list[PyTuple_MAXSAVESIZE];
|
||||||
static int numfree[PyTuple_MAXSAVESIZE];
|
static int numfree[PyTuple_MAXSAVESIZE];
|
||||||
#endif
|
#endif
|
||||||
#ifdef COUNT_ALLOCS
|
#ifdef COUNT_ALLOCS
|
||||||
int fast_tuple_allocs;
|
Py_ssize_t fast_tuple_allocs;
|
||||||
int tuple_zero_allocs;
|
Py_ssize_t tuple_zero_allocs;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue