cpython/Include/internal
Michael Droettboom c6127af868
gh-125063: Emit slices as constants in the bytecode compiler (#125064)
* Make slices marshallable

* Emit slices as constants

* Update Python/marshal.c

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Refactor codegen_slice into two functions so it
always has the same net effect

* Fix for free-threaded builds

* Simplify marshal loading of slices

* Only return SUCCESS/ERROR from codegen_slice

---------

Co-authored-by: Mark Shannon <mark@hotpy.org>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2024-10-08 13:18:39 -04:00
..
mimalloc gh-121487: Fix deprecation warning for ATOMIC_VAR_INIT in mimalloc (gh-121488) 2024-07-08 14:32:30 -04:00
pycore_abstract.h
pycore_asdl.h
pycore_ast.h gh-116126: Implement PEP 696 (#116129) 2024-05-03 06:17:32 -07:00
pycore_ast_state.h gh-116126: Implement PEP 696 (#116129) 2024-05-03 06:17:32 -07:00
pycore_atexit.h gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791) 2024-04-24 16:18:24 +00:00
pycore_backoff.h GH-116968: Remove branch from advance_backoff_counter (GH-124469) 2024-10-07 11:46:33 +01:00
pycore_bitutils.h
pycore_blocks_output_buffer.h
pycore_brc.h
pycore_bytes_methods.h gh-117431: Adapt bytes and bytearray .find() and friends to Argument Clinic (#117502) 2024-04-12 07:40:55 +00:00
pycore_bytesobject.h gh-121489: Export private _PyBytes_Join() again (#122267) 2024-07-25 17:31:30 +02:00
pycore_call.h gh-120686: remove unused internal c api functions (#120687) 2024-06-27 11:09:30 +01:00
pycore_capsule.h
pycore_cell.h gh-117323: Make `cell` thread-safe in free-threaded builds (#117330) 2024-03-29 13:35:43 -04:00
pycore_ceval.h GH-119866: Spill the stack around escaping calls. (GH-124392) 2024-10-07 14:56:39 +01:00
pycore_ceval_state.h gh-118518: Allow perf to work without frame pointers (#112254) 2024-05-05 03:07:29 +02:00
pycore_code.h gh-123747: Avoid static_assert() in internal header files (#123779) 2024-09-06 15:52:07 +02:00
pycore_codecs.h gh-124665: Add `_PyCodec_UnregisterError` and `_codecs._unregister_error` (#124677) 2024-09-29 02:25:23 +02:00
pycore_compile.h gh-123969: refactor _PyErr_RaiseSyntaxError and _PyErr_EmitSyntaxWarning out of compiler (#123972) 2024-09-16 15:05:00 +01:00
pycore_complexobject.h
pycore_condvar.h
pycore_context.h gh-119333: Add C api to have contextvar enter/exit callbacks (#119335) 2024-09-23 20:40:17 -07:00
pycore_critical_section.h gh-119344: Make critical section API public (#119353) 2024-06-21 15:50:18 -04:00
pycore_crossinterp.h gh-76785: Handle Legacy Interpreters Properly (gh-117490) 2024-04-11 23:23:25 +00:00
pycore_descrobject.h
pycore_dict.h gh-124296: Remove private dictionary version tag (PEP 699) (#124472) 2024-10-01 12:39:56 -04:00
pycore_dict_state.h gh-124296: Remove private dictionary version tag (PEP 699) (#124472) 2024-10-01 12:39:56 -04:00
pycore_dtoa.h gh-119447: Fix build with _PY_SHORT_FLOAT_REPR == 0 (#121178) 2024-06-30 11:40:40 +02:00
pycore_emscripten_signal.h
pycore_emscripten_trampoline.h
pycore_exceptions.h
pycore_faulthandler.h
pycore_fileutils.h gh-118422: Fix run_fileexflags() test (#118429) 2024-04-30 22:32:55 +02:00
pycore_fileutils_windows.h
pycore_floatobject.h gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
pycore_flowgraph.h gh-119744: move a few functions from compile.c to flowgraph.c (#119745) 2024-05-30 21:55:06 +01:00
pycore_format.h
pycore_frame.h gh-123923: Defer refcounting for `f_funcobj` in `_PyInterpreterFrame` (#124026) 2024-09-24 20:08:18 +00:00
pycore_freelist.h gh-123990: Good bye WITH_FREELISTS macro (gh-124358) 2024-09-24 01:28:59 +00:00
pycore_freelist_state.h gh-123990: Good bye WITH_FREELISTS macro (gh-124358) 2024-09-24 01:28:59 +00:00
pycore_function.h gh-115999: Stop the world when invalidating function versions (#124997) 2024-10-08 10:04:35 -04:00
pycore_gc.h gh-123923: Defer refcounting for `f_funcobj` in `_PyInterpreterFrame` (#124026) 2024-09-24 20:08:18 +00:00
pycore_genobject.h gh-120834: fix type of *_iframe field in _PyGenObject_HEAD declaration (#120835) 2024-06-24 10:23:38 +01:00
pycore_getopt.h
pycore_gil.h gh-116322: Enable the GIL while loading C extension modules (#118560) 2024-05-06 23:07:23 -04:00
pycore_global_objects.h gh-119180: Add evaluate functions for type params and type aliases (#122212) 2024-07-27 17:24:10 +00:00
pycore_global_objects_fini_generated.h gh-90102: Remove isatty call during regular open (#124922) 2024-10-08 08:50:42 +02:00
pycore_global_strings.h gh-90102: Remove isatty call during regular open (#124922) 2024-10-08 08:50:42 +02:00
pycore_hamt.h
pycore_hashtable.h
pycore_import.h gh-117657: Fix TSAN race involving import lock (#118523) 2024-06-06 13:40:58 -04:00
pycore_importdl.h gh-122907: Fix Builds Without HAVE_DYNAMIC_LOADING Set (gh-122952) 2024-08-13 14:44:57 -06:00
pycore_initconfig.h gh-107954, PEP 741: Add PyConfig_Get()/Set() functions (#123472) 2024-09-02 23:25:08 +02:00
pycore_instruction_sequence.h gh-121404: split compile.c into compile.c and codegen.c (#123651) 2024-09-09 18:21:51 +01:00
pycore_instruments.h Fix typos in comments (#120188) 2024-06-07 10:19:41 +02:00
pycore_interp.h gh-116750: Add clear_tool_id function to unregister events and callbacks (#124568) 2024-10-01 13:32:55 -04:00
pycore_intrinsics.h gh-116126: Implement PEP 696 (#116129) 2024-05-03 06:17:32 -07:00
pycore_jit.h gh-117139: Convert the evaluation stack to stack refs (#118450) 2024-06-27 03:10:43 +08:00
pycore_list.h gh-124064: Fix -Wconversion warnings in pycore_{gc,list,stackref}.h (#124174) 2024-09-17 14:43:39 +00:00
pycore_llist.h
pycore_lock.h gh-121368: Fix seq lock memory ordering in _PyType_Lookup (#121388) 2024-07-08 14:52:07 -04:00
pycore_long.h gh-123497: New limit for Python integers on 64-bit platforms (GH-123724) 2024-09-29 10:40:20 +03:00
pycore_magic_number.h gh-125063: Emit slices as constants in the bytecode compiler (#125064) 2024-10-08 13:18:39 -04:00
pycore_memoryobject.h
pycore_mimalloc.h gh-122584: Import mimalloc headers in a C++ context (#122587) 2024-08-15 09:01:01 -04:00
pycore_modsupport.h gh-112136: Restore removed _PyArg_Parser (#121262) 2024-07-03 18:36:57 +02:00
pycore_moduleobject.h gh-111178: Fix function signatures in moduleobject.c (#124900) 2024-10-02 14:31:04 +00:00
pycore_namespace.h
pycore_object.h gh-124218: Refactor per-thread reference counting (#124844) 2024-10-01 17:05:42 +00:00
pycore_object_alloc.h
pycore_object_deferred.h gh-117139: Convert the evaluation stack to stack refs (#118450) 2024-06-27 03:10:43 +08:00
pycore_object_stack.h gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
pycore_object_state.h gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
pycore_obmalloc.h
pycore_obmalloc_init.h
pycore_opcode_metadata.h GH-119866: Spill the stack around escaping calls. (GH-124392) 2024-10-07 14:56:39 +01:00
pycore_opcode_utils.h gh-119180: PEP 649 compiler changes (#119361) 2024-06-11 13:06:49 +00:00
pycore_optimizer.h GH-123516: Improve JIT memory consumption by invalidating cold executors (GH-124443) 2024-09-27 00:35:42 +00:00
pycore_parking_lot.h
pycore_parser.h gh-122581: Avoid data races when collecting parser statistics (#122694) 2024-08-06 13:29:57 +02:00
pycore_pathconfig.h
pycore_pyarena.h
pycore_pyatomic_ft_wrappers.h gh-117657: Make PyType_HasFeature atomic (GH-120210) 2024-06-13 17:29:19 +08:00
pycore_pybuffer.h gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791) 2024-04-24 16:18:24 +00:00
pycore_pyerrors.h gh-123969: refactor _PyErr_RaiseSyntaxError and _PyErr_EmitSyntaxWarning out of compiler (#123972) 2024-09-16 15:05:00 +01:00
pycore_pyhash.h gh-122854: Add Py_HashBuffer() function (#122855) 2024-08-30 15:42:27 +00:00
pycore_pylifecycle.h Remove more remnants of deepfreeze (#118159) 2024-04-22 12:17:57 -07:00
pycore_pymath.h
pycore_pymem.h
pycore_pymem_init.h
pycore_pystate.h gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
pycore_pystats.h
pycore_pythonrun.h
pycore_pythread.h gh-87135: Hang non-main threads that attempt to acquire the GIL during finalization (GH-105805) 2024-10-02 09:17:49 -07:00
pycore_qsbr.h gh-117657: Fix QSBR race condition (#118843) 2024-05-10 10:26:35 -04:00
pycore_range.h
pycore_runtime.h Add debug offsets for free threaded builds (#123041) 2024-08-15 18:42:41 +00:00
pycore_runtime_init.h gh-115999: Stop the world when invalidating function versions (#124997) 2024-10-08 10:04:35 -04:00
pycore_runtime_init_generated.h gh-90102: Remove isatty call during regular open (#124922) 2024-10-08 08:50:42 +02:00
pycore_semaphore.h
pycore_setobject.h gh-118527: Intern code consts in free-threaded build (#118667) 2024-05-06 20:12:39 -04:00
pycore_signal.h
pycore_sliceobject.h
pycore_stackref.h GH-121459: Streamline PyObject* to PyStackRef conversions by disallowing NULL pointers. (GH-124894) 2024-10-07 18:13:04 +01:00
pycore_strhex.h
pycore_structseq.h
pycore_symtable.h gh-122985: add SYMBOL_TO_SCOPE macro in symtable (#122986) 2024-08-14 06:17:04 +01:00
pycore_sysmodule.h gh-107954, PEP 741: Add PyConfig_Get()/Set() functions (#123472) 2024-09-02 23:25:08 +02:00
pycore_time.h gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) 2024-07-19 08:06:02 +00:00
pycore_token.h
pycore_traceback.h
pycore_tracemalloc.h
pycore_tstate.h gh-124218: Refactor per-thread reference counting (#124844) 2024-10-01 17:05:42 +00:00
pycore_tuple.h gh-117139: Add _PyTuple_FromStackRefSteal and use it (#121244) 2024-07-02 12:30:14 -04:00
pycore_typeobject.h gh-124153: Remove `_PyType_GetModuleByDef2` private function (GH-124261) 2024-09-26 18:21:11 +02:00
pycore_typevarobject.h gh-119180: Add evaluate functions for type params and type aliases (#122212) 2024-07-27 17:24:10 +00:00
pycore_ucnhash.h
pycore_unicodeobject.h gh-120686: remove unused internal c api functions (#120687) 2024-06-27 11:09:30 +01:00
pycore_unicodeobject_generated.h gh-90102: Remove isatty call during regular open (#124922) 2024-10-08 08:50:42 +02:00
pycore_unionobject.h
pycore_uniqueid.h gh-124218: Refactor per-thread reference counting (#124844) 2024-10-01 17:05:42 +00:00
pycore_uop_ids.h GH-119866: Spill the stack around escaping calls. (GH-124392) 2024-10-07 14:56:39 +01:00
pycore_uop_metadata.h GH-119866: Spill the stack around escaping calls. (GH-124392) 2024-10-07 14:56:39 +01:00
pycore_warnings.h gh-117511: Make PyMutex public in the non-limited API (#117731) 2024-06-20 11:29:08 -04:00
pycore_weakref.h gh-118789: Add `PyUnstable_Object_ClearWeakRefsNoCallbacks` (#118807) 2024-06-18 09:57:23 -04:00