summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* gh-94216: add pseudo instructions to the dis/opcodes modules (GH-94241)Irit Katriel2022-07-012-39/+12
|
* GH-94262: Don't create frame objects for frames that aren't yet complete. ↵Mark Shannon2022-07-012-5/+17
| | | | (GH-94371)
* gh-91719: Reload opcode on unknown error so that C can optimize the ↵neonene2022-06-301-0/+3
| | | | dispatching in ceval.c (#94364)
* GH-94329: Don't raise on excessive stack consumption (GH-94421)Mark Shannon2022-06-301-6/+1
|
* gh-94332: make it safe to call assemble_free when assemble_init has not been ↵Irit Katriel2022-06-301-1/+2
| | | | called (GH-94389)
* GH-94163: Add BINARY_SLICE and STORE_SLICE instructions. (GH-94168)Mark Shannon2022-06-274-45/+139
|
* gh-77560: Report possible errors in restoring builtins at finalization ↵Serhiy Storchaka2022-06-251-1/+1
| | | | | | | (GH-94255) Seems in the past the copy of builtins was not made in some scenarios, and the error was silenced. Write it now to stderr, so we have a chance to see it.
* GH-93841: Allow stats to be turned on and off, cleared and dumped at ↵Mark Shannon2022-06-214-9/+193
| | | | runtime. (GH-93843)
* gh-74953: _PyThread_cond_after() uses _PyTime_t (#94056)Victor Stinner2022-06-212-29/+16
| | | | | | pthread _PyThread_cond_after() implementation now uses the _PyTime_t type to handle properly overflow: clamp to the maximum value. Remove MICROSECONDS_TO_TIMESPEC() function.
* GH-91432: Specialize FOR_ITER (GH-91713)Dennis Sweeney2022-06-213-37/+118
| | | | | * Adds FOR_ITER_LIST and FOR_ITER_RANGE specializations. * Adds _PyLong_AssignValue() internal function to avoid temporary boxing of ints.
* GH-93678: refactor compiler so that optimizer does not need the assembler ↵Irit Katriel2022-06-211-160/+169
| | | | and compiler structs (GH-93842)
* gh-94021: Address unreachable code warning in specialize code (GH-94022)Christian Heimes2022-06-211-1/+2
|
* gh-93937: PyOS_StdioReadline() uses PyConfig.legacy_windows_stdio (#94024)Victor Stinner2022-06-201-0/+3
| | | | | | | On Windows, PyOS_StdioReadline() now gets PyConfig.legacy_windows_stdio from _PyOS_ReadlineTState, rather than using the deprecated global Py_LegacyWindowsStdioFlag variable. Fix also a compiler warning in Py_SetStandardStreamEncoding().
* GH-93516: Speedup line number checks when tracing. (GH-93763)Mark Shannon2022-06-201-7/+9
| | | | * Use a lookup table to reduce overhead of getting line numbers during tracing.
* GH-93897: Store frame size in code object and de-opt if insufficient space ↵Mark Shannon2022-06-203-41/+15
| | | | on thread frame stack. (GH-93908)
* gh-93937, C API: Move PyFrame_GetBack() to Python.h (#93938)Victor Stinner2022-06-196-6/+4
| | | | | | | | | | | | | | | | Move the follow functions and type from frameobject.h to pyframe.h, so the standard <Python.h> provide frame getter functions: * PyFrame_Check() * PyFrame_GetBack() * PyFrame_GetBuiltins() * PyFrame_GetGenerator() * PyFrame_GetGlobals() * PyFrame_GetLasti() * PyFrame_GetLocals() * PyFrame_Type Remove #include "frameobject.h" from many C files. It's no longer needed.
* gh-74953: Reformat PyThread_acquire_lock_timed() (#93947)Victor Stinner2022-06-191-46/+62
| | | | | | | | Reformat the pthread implementation of PyThread_acquire_lock_timed() using a mutex and a conditioinal variable. * Add goto to avoid multiple indentation levels and exit quickly * Use "while(1)" and make the control flow more obvious. * PEP 7: Add braces around if blocks.
* gh-93911: Specialize `LOAD_ATTR_PROPERTY` (GH-93912)Ken Jin2022-06-173-22/+97
|
* gh-77782: Deprecate global configuration variable (#93943)Victor Stinner2022-06-172-0/+24
| | | | | | | Deprecate global configuration variable like Py_IgnoreEnvironmentFlag: the Py_InitializeFromConfig() API should be instead. Fix declaration of Py_GETENV(): use PyAPI_FUNC(), not PyAPI_DATA().
* gh-74953: Fix PyThread_acquire_lock_timed() code recomputing the timeout ↵Victor Stinner2022-06-171-1/+1
| | | | | (#93941) Set timeout, don't create a local variable with the same name.
* gh-74953: Add _PyTime_FromMicrosecondsClamp() function (#93942)Victor Stinner2022-06-172-16/+17
|
* gh-77782: Py_FdIsInteractive() now uses PyConfig.interactive (#93916)Victor Stinner2022-06-174-14/+17
|
* gh-91985: Ensure in-tree builds override platstdlib_dir in every path ↵neonene2022-06-161-1/+22
| | | | calculation (GH-93641)
* Fix BINARY_SUBSCR_GETITEM stats (GH-93903)Ken Jin2022-06-162-7/+7
|
* Rename 'LOAD_METHOD' specialization stat consts to 'ATTR'. (GH-93812)Mark Shannon2022-06-141-17/+14
|
* Remove LOAD_METHOD stats. (GH-93807)Mark Shannon2022-06-141-1/+0
|
* GH-93678: reduce boilerplate and code repetition in the compiler (GH-93682)Irit Katriel2022-06-141-261/+150
|
* GH-93429: Merge `LOAD_METHOD` back into `LOAD_ATTR` (GH-93430)Ken Jin2022-06-144-243/+194
|
* GH-93516: Store offset of first traceable instruction in code object (GH-93769)Mark Shannon2022-06-141-52/+37
|
* GH-93662: Make sure that column offsets are correct in multi-line method ↵Mark Shannon2022-06-141-4/+16
| | | | calls. (GH-93673)
* gh-93741: Add private C API _PyImport_GetModuleAttrString() (GH-93742)Serhiy Storchaka2022-06-142-29/+45
| | | | | | It combines PyImport_ImportModule() and PyObject_GetAttrString() and saves 4-6 lines of code on every use. Add also _PyImport_GetModuleAttr() which takes Python strings as arguments.
* Add more FOR_ITER specialization stats (GH-32151)Dennis Sweeney2022-06-131-2/+26
|
* GH-93621: reorder code in with/async-with exception exit path to reduce the ↵Irit Katriel2022-06-101-7/+13
| | | | size of the exception table (GH-93622)
* Fix MSVC compiler warnings in ceval.c (#93569)Ken Jin2022-06-071-2/+2
|
* Shrink the LOAD_METHOD cache by one codeunit. (#93537)Mark Shannon2022-06-072-13/+7
|
* GH-93444: remove redundant fields from basicblock: b_nofallthrough, b_exit, ↵Irit Katriel2022-06-031-78/+74
| | | | b_return (GH-93445)
* gh-93356: Lay out exception handling code at end of code unit (GH-92769)Irit Katriel2022-06-021-42/+220
|
* gh-92597: Improve error message for AST nodes with invalid ranges (GH-93398)Pablo Galindo Salgado2022-06-011-3/+3
|
* gh-90300: split --help output into separate options (#30331)Éric2022-06-012-65/+123
| | | | | | Make --help output shorter and add new help options. --help-env, --help-xoptions and --help-all command-line options are added to complement --help.
* gh-92597: Ensure that AST nodes without explicit end positions can be ↵Pablo Galindo Salgado2022-05-311-12/+12
| | | | compiled (GH-93359)
* gh-93143: Avoid NULL check in LOAD_FAST based on analysis in the compiler ↵Dennis Sweeney2022-05-313-24/+130
| | | | (GH-93144)
* GH-93354: Use exponential backoff to avoid excessive specialization ↵Mark Shannon2022-05-312-43/+46
| | | | attempts. (GH-93355)
* gh-93351: Ensure the position information in AST nodes created by the parser ↵Pablo Galindo Salgado2022-05-301-0/+26
| | | | is always consistent (GH-93352)
* gh-93008: refactor compiler functions that add instructions to take only a ↵Irit Katriel2022-05-291-60/+61
| | | | basicblock* (not the whole compiler) (GH-93009)
* bpo-40514: Drop EXPERIMENTAL_ISOLATED_SUBINTERPRETERS (gh-93185)Eric Snow2022-05-275-102/+0
| | | | | | | This was added for bpo-40514 (gh-84694) to test out a per-interpreter GIL. However, it has since proven unnecessary to keep the experiment in the repo. (It can be done as a branch in a fork like normal.) So here we are removing: * the configure option * the macro * the code enabled by the macro
* GH-90230: Add stats to breakdown the origin of calls to `PyEval_EvalFrame` ↵Mark Shannon2022-05-273-2/+9
| | | | (GH-93284)
* GH-93207: Remove HAVE_STDARG_PROTOTYPES configure check for stdarg.h (#93215)Kumar Aditya2022-05-277-64/+0
|
* gh-93223: More aggressive Jump-To-Jump elimination (GH-93229)Dennis Sweeney2022-05-271-1/+1
|
* gh-93217: fix some issues in man page and --help (#93219)Éric2022-05-261-5/+4
|
* gh-92777: Add LOAD_METHOD_LAZY_DICT (GH-92778)Ken Jin2022-05-253-18/+50
|