cpython/Python
Mark Shannon 8319114fee
bpo-45947: Place dict and values pointer at fixed (negative) offset just before GC header. (GH-29879)
* Place __dict__ immediately before GC header for plain Python objects.

* Fix up lazy dict creation logic to use managed dict pointers.

* Manage values pointer, placing them directly before managed dict pointers.

* Convert hint-based load/store attr specialization target managed dict classes.

* Specialize LOAD_METHOD for managed dict objects.

* Remove unsafe _PyObject_GC_Calloc function.

* Remove unsafe _PyObject_GC_Malloc() function.

* Add comment explaning use of Py_TPFLAGS_MANAGED_DICT.
2021-12-07 16:02:53 +00:00
..
clinic bpo-21736: Set __file__ on frozen stdlib modules. (gh-28656) 2021-10-14 15:32:18 -06:00
deepfreeze bpo-45696: Deep-freeze selected modules (GH-29118) 2021-11-10 18:01:53 -08:00
frozen_modules bpo-45020: Drop the frozen .h files from the repo. (gh-28392) 2021-09-16 14:20:52 -06:00
Python-ast.c bpo-11105: Do not crash when compiling recursive ASTs (GH-20594) 2021-06-03 21:01:02 +01:00
Python-tokenize.c bpo-45434: Mark the PyTokenizer C API as private (GH-28924) 2021-10-13 17:22:14 +02:00
README
_warnings.c bpo-44590: Lazily allocate frame objects (GH-27077) 2021-07-26 11:22:16 +01:00
adaptive.md bpo-44854: Remove trailing whitespaces (GH-27689) 2021-08-09 21:32:54 +03:00
asdl.c bpo-43244: Remove ast.h, asdl.h, Python-ast.h headers (GH-24933) 2021-03-23 20:47:40 +01:00
ast.c bpo-45753: Make recursion checks more efficient. (GH-29524) 2021-11-16 11:01:57 +00:00
ast_opt.c Remove misleading comment in the AST optimizer (#29825) 2021-11-29 11:19:59 +03:00
ast_unparse.c bpo-43892: Make match patterns explicit in the AST (GH-25585) 2021-04-28 22:58:44 -07:00
bltinmodule.c bpo-44525: Copy free variables in bytecode to allow calls to inner functions to be specialized (GH-29595) 2021-11-23 09:53:24 +00:00
bootstrap_hash.c bpo-44611: Use BCryptGenRandom instead of CryptGenRandom on Windows (GH-27168) 2021-07-23 23:04:30 +09:00
ceval.c bpo-45947: Place dict and values pointer at fixed (negative) offset just before GC header. (GH-29879) 2021-12-07 16:02:53 +00:00
ceval_gil.h bpo-43268: Pass interp rather than tstate to internal functions (GH-24580) 2021-02-19 15:10:45 +01:00
codecs.c bpo-45439: Move _PyObject_CallNoArgs() to pycore_call.h (GH-28895) 2021-10-12 08:38:19 +02:00
compile.c Delete orphaned comment (#29917) 2021-12-05 09:03:58 -08:00
condvar.h bpo-44740: Lowercase "internet" and "web" where appropriate. (#27378) 2021-07-27 00:11:55 +02:00
context.c bpo-45522: Allow to disable freelists on build time (GH-29056) 2021-10-21 06:12:20 -07:00
dtoa.c bpo-45434: pyport.h no longer includes <stdlib.h> (GH-28914) 2021-10-13 19:25:53 +02:00
dup2.c
dynamic_annotations.c
dynload_hpux.c bpo-44959: Add fallback to extension modules with '.sl' suffix on HP-UX (GH-27857) 2021-09-08 14:43:00 +02:00
dynload_shlib.c bpo-43895: Remove an unnecessary cache of shared object handles (GH-25487) 2021-07-07 16:26:06 -07:00
dynload_stub.c
dynload_win.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
errors.c bpo-45711: Change exc_info related APIs to derive type and traceback from the exception instance (GH-29780) 2021-11-30 22:37:04 +00:00
fileutils.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
formatter_unicode.c bpo-35134: Add Include/cpython/longobject.h (GH-29044) 2021-10-19 02:04:52 +02:00
frame.c bpo-45963: Make space for the InterpreterFrame of a generator in that generator. (GH-29891) 2021-12-06 10:13:49 +00:00
frozen.c bpo-45850: Implement deep-freeze on Windows (#29648) 2021-11-22 10:09:48 -08:00
frozenmain.c bpo-44131: Py_FrozenMain() uses PyConfig_SetBytesArgv() (GH-26201) 2021-05-20 12:08:05 +02:00
future.c bpo-38605: Revert making 'from __future__ import annotations' the default (GH-25490) 2021-04-21 12:41:19 +01:00
getargs.c bpo-20291: Fix MSVC warnings in getargs.c (GH-27211) 2021-07-17 14:09:18 +03:00
getcompiler.c closes bpo-43278: remove unnecessary leading '\n' from COMPILER when build with GCC/Clang (GH-24606) 2021-02-25 20:24:21 -08:00
getcopyright.c Bring Python into the new year. (GH-24036) 2021-01-02 00:37:23 +09:00
getopt.c bpo-40527: Fix command line argument parsing (GH-19955) 2020-05-06 22:22:17 +09:00
getplatform.c
getversion.c
hamt.c bpo-29882: Add _Py_popcount32() function (GH-20518) 2020-06-08 16:30:33 +02:00
hashtable.c bpo-41061: Fix incorrect expressions in hashtable (GH-21028) 2020-06-22 00:41:48 -07:00
import.c bpo-45020: Fix strict-prototypes warning (GH-29755) 2021-11-24 20:01:39 +01:00
importdl.c Fix format string in _PyImport_LoadDynamicModuleWithSpec() (GH-28863) 2021-10-12 10:20:04 +03:00
importdl.h
initconfig.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
makeopcodetargets.py bpo-43760: Check for tracing using 'bitwise or' instead of branch in dispatch. (GH-28723) 2021-10-05 11:01:11 +01:00
marshal.c bpo-35134: Move classobject.h to Include/cpython/ (GH-28968) 2021-10-15 09:46:29 +02:00
modsupport.c bpo-1635741: Add PyModule_AddObjectRef() function (GH-23122) 2020-11-04 13:59:15 +01:00
mysnprintf.c bpo-36020: Require vsnprintf() to build Python (GH-20899) 2020-06-16 00:54:44 +02:00
mystrtoul.c bpo-35134: Add Include/cpython/longobject.h (GH-29044) 2021-10-19 02:04:52 +02:00
opcode_targets.h bpo-45885: Specialize COMPARE_OP (GH-29734) 2021-12-03 11:29:12 +00:00
pathconfig.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
preconfig.c bpo-45434: pyport.h no longer includes <stdlib.h> (GH-28914) 2021-10-13 19:25:53 +02:00
pyarena.c bpo-43244: Remove the pyarena.h header (GH-25007) 2021-03-24 02:23:01 +01:00
pyctype.c
pyfpe.c
pyhash.c bpo-29410: Change the default hash algorithm to SipHash13. (GH-28752) 2021-10-10 17:29:46 +09:00
pylifecycle.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
pymath.c bpo-45440: Remove pymath.c fallbacks (GH-28977) 2021-10-15 19:45:34 +02:00
pystate.c bpo-45711: use exc_value instead of exc_type to determine if exc_info is valid. Add more assertions. (GH-29627) 2021-11-25 09:41:28 +00:00
pystrcmp.c bpo-41524: fix pointer bug in PyOS_mystr{n}icmp (GH-21845) 2020-08-27 14:45:25 +09:00
pystrhex.c bpo-45434: pyport.h no longer includes <stdlib.h> (GH-28914) 2021-10-13 19:25:53 +02:00
pystrtod.c bpo-45412: Move _Py_SET_53BIT_PRECISION_START to pycore_pymath.h (GH-28882) 2021-10-11 23:09:40 +02:00
pythonrun.c bpo-45607: Make it possible to enrich exception displays via setting their __note__ field (GH-29880) 2021-12-03 22:01:15 +00:00
pytime.c bpo-45412: Remove Py_SET_ERRNO_ON_MATH_ERROR() macro (GH-28820) 2021-10-11 21:00:25 +02:00
specialize.c bpo-45947: Place dict and values pointer at fixed (negative) offset just before GC header. (GH-29879) 2021-12-07 16:02:53 +00:00
stdlib_module_names.h Revert "bpo-28533: Remove asyncore, asynchat, smtpd modules (GH-29521)" (GH-29951) 2021-12-07 12:31:04 +01:00
structmember.c bpo-44655: Include the name of the type in unset __slots__ attribute errors (GH-27199) 2021-07-17 00:34:46 +01:00
suggestions.c bpo-45826: Fix a crash in suggestions.c by checking for `traceback is None` (GH-29590) 2021-11-18 00:03:52 +01:00
symtable.c bpo-45753: Make recursion checks more efficient. (GH-29524) 2021-11-16 11:01:57 +00:00
sysmodule.c bpo-45947: Place dict and values pointer at fixed (negative) offset just before GC header. (GH-29879) 2021-12-07 16:02:53 +00:00
thread.c bpo-44584: Deprecate PYTHONTHREADDEBUG env var (GH-27065) 2021-08-06 13:11:12 +02:00
thread_nt.h bpo-41710: Add private _PyDeadline_Get() function (GH-28674) 2021-10-01 13:29:25 +02:00
thread_pthread.h bpo-41710: Add private _PyDeadline_Get() function (GH-28674) 2021-10-01 13:29:25 +02:00
traceback.c bpo-45831: _Py_DumpASCII() uses a single write() call if possible (GH-29596) 2021-11-17 21:12:20 +01:00
wordcode_helpers.h

README

Miscellaneous source files for the main Python shared library