Skip to content

Commit a625523

Browse files
author
Michael W. Hudson
committed
add description of LLTRACE.
1 parent 50584b4 commit a625523

1 file changed

Lines changed: 18 additions & 6 deletions

File tree

Misc/SpecialBuilds.txt

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -135,13 +135,13 @@ Py_DEBUG introduced in 1.5
135135

136136
This is what is generally meant by "a debug build" of Python.
137137

138-
Py_DEBUG implies Py_REF_DEBUG, Py_TRACE_REFS, and PYMALLOC_DEBUG (if
139-
WITH_PYMALLOC is enabled). In addition, C assert()s are enabled (via
140-
the C way: by not defining NDEBUG), and some routines do additional
141-
sanity checks inside "#ifdef Py_DEBUG" blocks.
138+
Py_DEBUG implies LLTRACE, Py_REF_DEBUG, Py_TRACE_REFS, and
139+
PYMALLOC_DEBUG (if WITH_PYMALLOC is enabled). In addition, C
140+
assert()s are enabled (via the C way: by not defining NDEBUG), and
141+
some routines do additional sanity checks inside "#ifdef Py_DEBUG"
142+
blocks.
142143
---------------------------------------------------------------------------
143-
COUNT_ALLOCS introduced in 0.9.9
144-
partly broken in 2.2 and 2.2.1
144+
COUNT_ALLOCS introduced in 0.9.9 partly broken in 2.2 and 2.2.1
145145

146146
Each type object grows three new members:
147147

@@ -186,3 +186,15 @@ sys.getcounts()
186186
for which the first allocation of an object of that type occurred
187187
most recently is at the front of the list.
188188
---------------------------------------------------------------------------
189+
LLTRACE introduced ...? Long time ago!
190+
191+
Compile in support of Low Level TRACE-ing of the man interpreter loop.
192+
193+
When this preprocessor symbol is defined, before eval_frame
194+
(eval_code2 before 2.2) executes a frame's code checks its global
195+
namespace for a variable "__lltrace__". If such a variable is found,
196+
mounds of information about what the interpreter is doing are sprayed
197+
to stdout, such as every opcode and opcode argument and values pushed
198+
onto and popped off the value stack.
199+
200+
Not useful very often, but very useful when needed.

0 commit comments

Comments
 (0)