mirror of
https://github.com/python/cpython
synced 2026-09-28 15:58:17 +03:00
path (with no profile/trace function) through eval_code2() and eval_frame() avoids several checks. In the common cases of calls, returns, and exception propogation, eval_code2() and eval_frame() used to test two values in the thread-state: the profiling function and the tracing function. With this change, a flag is set in the thread-state if either of these is active, allowing a single check to suffice when both are NULL. This also simplifies the code needed when either function is in use but is already active (to avoid profiling/tracing the profiler/tracer); the flag is set to 0 when the profile/trace code is entered, allowing the same check to suffice for "already in the tracer" for call/return/ exception events. |
||
|---|---|---|
| .. | ||
| .cvsignore | ||
| atof.c | ||
| bltinmodule.c | ||
| ceval.c | ||
| codecs.c | ||
| compile.c | ||
| dup2.c | ||
| dynload_aix.c | ||
| dynload_beos.c | ||
| dynload_dl.c | ||
| dynload_hpux.c | ||
| dynload_mac.c | ||
| dynload_next.c | ||
| dynload_os2.c | ||
| dynload_shlib.c | ||
| dynload_stub.c | ||
| dynload_win.c | ||
| errors.c | ||
| exceptions.c | ||
| fmod.c | ||
| frozen.c | ||
| frozenmain.c | ||
| future.c | ||
| getargs.c | ||
| getcompiler.c | ||
| getcopyright.c | ||
| getcwd.c | ||
| getmtime.c | ||
| getopt.c | ||
| getplatform.c | ||
| getversion.c | ||
| graminit.c | ||
| hypot.c | ||
| import.c | ||
| importdl.c | ||
| importdl.h | ||
| marshal.c | ||
| memmove.c | ||
| modsupport.c | ||
| mystrtoul.c | ||
| pyfpe.c | ||
| pystate.c | ||
| pythonmain.c | ||
| pythonrun.c | ||
| sigcheck.c | ||
| strdup.c | ||
| strerror.c | ||
| strtod.c | ||
| structmember.c | ||
| symtable.c | ||
| sysmodule.c | ||
| thread.c | ||
| thread_beos.h | ||
| thread_cthread.h | ||
| thread_foobar.h | ||
| thread_lwp.h | ||
| thread_nt.h | ||
| thread_os2.h | ||
| thread_pth.h | ||
| thread_pthread.h | ||
| thread_sgi.h | ||
| thread_solaris.h | ||
| thread_wince.h | ||
| traceback.c | ||