]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
GH-113464: Add a JIT backend for tier 2 (GH-113465)
authorBrandt Bucher <brandtbucher@microsoft.com>
Mon, 29 Jan 2024 02:48:48 +0000 (18:48 -0800)
committerGitHub <noreply@github.com>
Mon, 29 Jan 2024 02:48:48 +0000 (18:48 -0800)
commitf6d9e5926b6138994eaa60d1c36462e36105733d
tree53362fa9918ab65519ccf9a343cfcdfcfa9c4f6f
parentf7c05d7ad3075a1dbeed86b6b12903032e4afba6
GH-113464: Add a JIT backend for tier 2 (GH-113465)

Add an option (--enable-experimental-jit for configure-based builds
or --experimental-jit for PCbuild-based ones) to build an
*experimental* just-in-time compiler, based on copy-and-patch (https://fredrikbk.com/publications/copy-and-patch.pdf).

See Tools/jit/README.md for more information on how to install the required build-time tooling.
29 files changed:
.github/workflows/jit.yml [new file with mode: 0644]
.github/workflows/mypy.yml
.gitignore
Include/cpython/optimizer.h
Include/internal/pycore_jit.h [new file with mode: 0644]
Include/internal/pycore_object.h
Makefile.pre.in
Misc/NEWS.d/next/Core and Builtins/2023-12-24-03-25-28.gh-issue-113464.dvjQmA.rst [new file with mode: 0644]
PCbuild/_freeze_module.vcxproj
PCbuild/_freeze_module.vcxproj.filters
PCbuild/build.bat
PCbuild/pythoncore.vcxproj
PCbuild/pythoncore.vcxproj.filters
PCbuild/regen.targets
Python/ceval.c
Python/jit.c [new file with mode: 0644]
Python/optimizer.c
Python/pylifecycle.c
Tools/jit/README.md [new file with mode: 0644]
Tools/jit/_llvm.py [new file with mode: 0644]
Tools/jit/_schema.py [new file with mode: 0644]
Tools/jit/_stencils.py [new file with mode: 0644]
Tools/jit/_targets.py [new file with mode: 0644]
Tools/jit/_writer.py [new file with mode: 0644]
Tools/jit/build.py [new file with mode: 0644]
Tools/jit/mypy.ini [new file with mode: 0644]
Tools/jit/template.c [new file with mode: 0644]
configure
configure.ac