gh-89479: Export _Py_GetSpecializationStats() internal function (#92011)

When Python is built with "./configure --enable-pystats" (if the
Py_STATS macro is defined), the _Py_GetSpecializationStats() function
must be exported, since it's used by the _opcode extension which is
built as a shared library.
This commit is contained in:
Victor Stinner 2022-04-28 14:02:45 +02:00 committed by GitHub
parent 88dd227959
commit 87c6cf9aa7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 3 deletions

View file

@ -139,7 +139,7 @@ General Options
The statistics will be dumped to a arbitrary (probably unique) file in
``/tmp/py_stats/``, or ``C:\temp\py_stats\`` on Windows.
Use ``Tools//summarize_stats.py`` to read the stats.
Use ``Tools/scripts/summarize_stats.py`` to read the stats.
.. versionadded:: 3.11

View file

@ -316,7 +316,8 @@ extern PyStats _py_stats;
extern void _Py_PrintSpecializationStats(int to_file);
extern PyObject* _Py_GetSpecializationStats(void);
// Used by the _opcode extension which is built as a shared library
PyAPI_FUNC(PyObject*) _Py_GetSpecializationStats(void);
#else
#define STAT_INC(opname, name) ((void)0)
@ -324,7 +325,7 @@ extern PyObject* _Py_GetSpecializationStats(void);
#define OPCODE_EXE_INC(opname) ((void)0)
#define CALL_STAT_INC(name) ((void)0)
#define OBJECT_STAT_INC(name) ((void)0)
#endif
#endif // !Py_STATS
// Cache values are only valid in memory, so use native endianness.
#ifdef WORDS_BIGENDIAN