Commit a6255238 authored by Michael W. Hudson's avatar Michael W. Hudson

add description of LLTRACE.

parent 50584b4c
......@@ -135,13 +135,13 @@ Py_DEBUG introduced in 1.5
This is what is generally meant by "a debug build" of Python.
Py_DEBUG implies Py_REF_DEBUG, Py_TRACE_REFS, and PYMALLOC_DEBUG (if
WITH_PYMALLOC is enabled). In addition, C assert()s are enabled (via
the C way: by not defining NDEBUG), and some routines do additional
sanity checks inside "#ifdef Py_DEBUG" blocks.
Py_DEBUG implies LLTRACE, Py_REF_DEBUG, Py_TRACE_REFS, and
PYMALLOC_DEBUG (if WITH_PYMALLOC is enabled). In addition, C
assert()s are enabled (via the C way: by not defining NDEBUG), and
some routines do additional sanity checks inside "#ifdef Py_DEBUG"
blocks.
---------------------------------------------------------------------------
COUNT_ALLOCS introduced in 0.9.9
partly broken in 2.2 and 2.2.1
COUNT_ALLOCS introduced in 0.9.9 partly broken in 2.2 and 2.2.1
Each type object grows three new members:
......@@ -186,3 +186,15 @@ sys.getcounts()
for which the first allocation of an object of that type occurred
most recently is at the front of the list.
---------------------------------------------------------------------------
LLTRACE introduced ...? Long time ago!
Compile in support of Low Level TRACE-ing of the man interpreter loop.
When this preprocessor symbol is defined, before eval_frame
(eval_code2 before 2.2) executes a frame's code checks its global
namespace for a variable "__lltrace__". If such a variable is found,
mounds of information about what the interpreter is doing are sprayed
to stdout, such as every opcode and opcode argument and values pushed
onto and popped off the value stack.
Not useful very often, but very useful when needed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment