From 8d197674039bc3bc2f054095148ddaadec3afc97 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 9 Oct 2013 14:53:01 +0200 Subject: [PATCH] Close #19199: Remove ``PyThreadState.tick_counter`` field --- Doc/whatsnew/3.4.rst | 3 ++- Include/pystate.h | 10 ---------- Misc/NEWS | 2 ++ Python/ceval.c | 1 - Python/pystate.c | 1 - 5 files changed, 4 insertions(+), 13 deletions(-) diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index 81c2d8750c..636d05d5b9 100644 --- a/Doc/whatsnew/3.4.rst +++ b/Doc/whatsnew/3.4.rst @@ -523,7 +523,8 @@ Deprecated Python modules, functions and methods Deprecated functions and types of the C API ------------------------------------------- -* None yet. +* The ``PyThreadState.tick_counter`` field has been value: its value was meaningless + since Python 3.2 ("new GIL"). Deprecated features diff --git a/Include/pystate.h b/Include/pystate.h index ddc68922cb..06af808444 100644 --- a/Include/pystate.h +++ b/Include/pystate.h @@ -100,16 +100,6 @@ typedef struct _ts { PyObject *dict; /* Stores per-thread state */ - /* XXX doesn't mean anything anymore (the comment below is obsolete) - => deprecate or remove? */ - /* tick_counter is incremented whenever the check_interval ticker - * reaches zero. The purpose is to give a useful measure of the number - * of interpreted bytecode instructions in a given thread. This - * extremely lightweight statistic collector may be of interest to - * profilers (like psyco.jit()), although nothing in the core uses it. - */ - int tick_counter; - int gilstate_counter; PyObject *async_exc; /* Asynchronous exception to raise */ diff --git a/Misc/NEWS b/Misc/NEWS index f2d96953af..c42d8d8687 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,8 @@ Projected release date: 2013-10-20 Core and Builtins ----------------- +- Issue #19199: Remove ``PyThreadState.tick_counter`` field + - Fix macro expansion of _PyErr_OCCURRED(), and make sure to use it in at least one place so as to avoid regressions. diff --git a/Python/ceval.c b/Python/ceval.c index dcfe8ec2aa..2d52862a84 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -1247,7 +1247,6 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) a try: finally: block uninterruptible. */ goto fast_next_opcode; } - tstate->tick_counter++; #ifdef WITH_TSC ticked = 1; #endif diff --git a/Python/pystate.c b/Python/pystate.c index ecd00ce5b4..6be71de2ae 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -182,7 +182,6 @@ new_threadstate(PyInterpreterState *interp, int init) tstate->recursion_critical = 0; tstate->tracing = 0; tstate->use_tracing = 0; - tstate->tick_counter = 0; tstate->gilstate_counter = 0; tstate->async_exc = NULL; #ifdef WITH_THREAD -- 2.40.0