@@ -265,53 +265,6 @@ extern int _PyStaticCode_InternStrings(PyCodeObject *co);
265265
266266#ifdef Py_STATS
267267
268- #define SPECIALIZATION_FAILURE_KINDS 30
269-
270- typedef struct _specialization_stats {
271- uint64_t success ;
272- uint64_t failure ;
273- uint64_t hit ;
274- uint64_t deferred ;
275- uint64_t miss ;
276- uint64_t deopt ;
277- uint64_t failure_kinds [SPECIALIZATION_FAILURE_KINDS ];
278- } SpecializationStats ;
279-
280- typedef struct _opcode_stats {
281- SpecializationStats specialization ;
282- uint64_t execution_count ;
283- uint64_t pair_count [256 ];
284- } OpcodeStats ;
285-
286- typedef struct _call_stats {
287- uint64_t inlined_py_calls ;
288- uint64_t pyeval_calls ;
289- uint64_t frames_pushed ;
290- uint64_t frame_objects_created ;
291- } CallStats ;
292-
293- typedef struct _object_stats {
294- uint64_t allocations ;
295- uint64_t allocations512 ;
296- uint64_t allocations4k ;
297- uint64_t allocations_big ;
298- uint64_t frees ;
299- uint64_t to_freelist ;
300- uint64_t from_freelist ;
301- uint64_t new_values ;
302- uint64_t dict_materialized_on_request ;
303- uint64_t dict_materialized_new_key ;
304- uint64_t dict_materialized_too_big ;
305- uint64_t dict_materialized_str_subclass ;
306- } ObjectStats ;
307-
308- typedef struct _stats {
309- OpcodeStats opcode_stats [256 ];
310- CallStats call_stats ;
311- ObjectStats object_stats ;
312- } PyStats ;
313-
314- extern PyStats _py_stats ;
315268
316269#define STAT_INC (opname , name ) _py_stats.opcode_stats[opname].specialization.name++
317270#define STAT_DEC (opname , name ) _py_stats.opcode_stats[opname].specialization.name--
@@ -321,8 +274,6 @@ extern PyStats _py_stats;
321274#define OBJECT_STAT_INC_COND (name , cond ) \
322275 do { if (cond) _py_stats.object_stats.name++; } while (0)
323276
324- extern void _Py_PrintSpecializationStats (int to_file );
325-
326277// Used by the _opcode extension which is built as a shared library
327278PyAPI_FUNC (PyObject * ) _Py_GetSpecializationStats (void );
328279
0 commit comments