cpython/Tools/build
Eddie Elizondo ea2c001650
gh-84436: Implement Immortal Objects (gh-19474)
This is the implementation of PEP683

Motivation:

The PR introduces the ability to immortalize instances in CPython which bypasses reference counting. Tagging objects as immortal allows up to skip certain operations when we know that the object will be around for the entire execution of the runtime.

Note that this by itself will bring a performance regression to the runtime due to the extra reference count checks. However, this brings the ability of having truly immutable objects that are useful in other contexts such as immutable data sharing between sub-interpreters.
2023-04-22 13:39:37 -06:00
..
check_extension_modules.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
deepfreeze.py gh-84436: Implement Immortal Objects (gh-19474) 2023-04-22 13:39:37 -06:00
freeze_modules.py Add advice how to freeze fewer modules (#101298) 2023-01-25 09:28:14 -08:00
generate_global_objects.py gh-100227: Move the Dict of Interned Strings to PyInterpreterState (gh-102339) 2023-03-28 12:52:28 -06:00
generate_levenshtein_examples.py gh-99016: Make build scripts compatible with Python 3.8 (GH-99017) 2022-11-02 20:30:09 +02:00
generate_opcode_h.py GH-103082: Implementation of PEP 669: Low Impact Monitoring for CPython (GH-103083) 2023-04-12 12:04:55 +01:00
generate_re_casefix.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
generate_sre_constants.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
generate_stdlib_module_names.py gh-101524: Split Up the _xxsubinterpreters Module (gh-101526) 2023-02-03 18:14:43 -07:00
generate_token.py gh-102856: Initial implementation of PEP 701 (#102855) 2023-04-19 11:18:16 -05:00
parse_html5_entities.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
smelly.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
stable_abi.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
umarshal.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
update_file.py gh-97669: Create Tools/build/ directory (#97963) 2022-10-17 12:01:00 +02:00
verify_ensurepip_wheels.py gh-95299: Stop installing setuptools as a part of ensurepip and venv (#101039) 2023-04-17 23:43:34 -05:00