Christian Heimes
96b344c2f1
bpo-40280: Address more test failures on Emscripten (GH-31050)
...
Co-authored-by: Brett Cannon <brett@python.org>
2022-02-05 20:52:01 +01:00
Kumar Aditya
9d4161a60c
bpo-46608: Fix argument parsing in freeze_modules.py (GH-31131)
2022-02-05 07:59:48 -08:00
Kumar Aditya
bf95ff91f2
bpo-46608: exclude marshalled-frozen data if deep-freezing to save 300 KB space (GH-31074)
...
This reduces the size of the data segment by **300 KB** of the executable because if the modules are deep-frozen then the marshalled frozen data just wastes space. This was inspired by comment by @gvanrossum in https://github.com/python/cpython/pull/29118#issuecomment-958521863 . Note: There is a new option `--deepfreeze-only` in `freeze_modules.py` to change this behavior, it is on be default to save disk space.
```console
# du -s ./python before
27892 ./python
# du -s ./python after
27524 ./python
```
Automerge-Triggered-By: GH:ericsnowcurrently
2022-02-04 09:57:03 -08:00
Mark Shannon
832876b992
Add miss stats for specialized instructions. (GH-31108)
2022-02-04 09:56:46 +00:00
Manish Kumar ⛄
ba650af7d6
Optimize images by IMGbot (GH-21348)
...
Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2022-02-04 15:49:43 +09:00
Gregory P. Smith
164a017e13
bpo-46576: bpo-46524: Disable compiler optimization within test_peg_generator. ( #31015 )
...
Disable compiler optimization within test_peg_generator.
This speed up test_peg_generator by always disabling compiler
optimizations by using -O0 or equivalent when the test is building its
own C extensions.
A build not using --with-pydebug in order to speed up test execution
winds up with this test taking a very long time as it would do
repeated compilation of parser C code using the same optimization
flags as CPython was built with.
This speeds the test up 6-8x on gps-raspbian.
Also incorporate's #31017 's win32 conditional and flags.
Co-authored-by: Kumar Aditya kumaraditya303
2022-02-02 12:15:16 -08:00
Mark Shannon
0d05da1fbf
Add specialization stats for FOR_ITER. (GH-31079)
2022-02-02 15:56:47 +00:00
Mark Shannon
187930f74c
bpo-46072: Add some frame stats. (GH-31060)
2022-02-02 11:01:33 +00:00
Mark Shannon
48be46ec1f
bpo-46072: Add some object layout and allocation stats (GH-31051)
2022-02-01 15:05:18 +00:00
Steve Dower
45faf151c6
bpo-33125: Enables building traditional installer for Windows ARM64 (GH-30885)
...
Also makes a few general improvements to the build process and removes some dead code.
2022-01-28 16:48:06 +00:00
Mark Shannon
90ab138bbd
bpo-46072: Add simple stats for Python calls. (GH-30989)
2022-01-28 15:20:33 +00:00
Kumar Aditya
5a9e423473
bpo-46449: deepfreeze get_code() now returns strong ref (GH-30987)
2022-01-28 13:41:13 +01:00
Christian Heimes
26b0482393
bpo-46476: Simplify and fix _PyStaticCode_Dealloc (GH-30965)
2022-01-27 19:32:12 +00:00
Eric Snow
247480a21c
bpo-46541: Generate the global objects initializer. (gh-30941)
...
This change is a prerequisite for generating code for other global objects (like strings in gh-30928).
(We borrowed some code from Tools/scripts/deepfreeze.py.)
https://bugs.python.org/issue46541
2022-01-27 11:06:09 -07:00
Kumar Aditya
c7f810b34d
bpo-46476: Fix memory leak in code objects generated by deepfreeze (GH-30853)
...
Add _Py_Deepfreeze_Fini() and _PyStaticCode_Dealloc() functions.
2022-01-27 14:03:47 +01:00
Christian Heimes
d5fd438b38
bpo-40280: Get help() working and more (GH-30858)
2022-01-24 22:02:01 +01:00
Kumar Aditya
ca78130d7e
bpo-46471: Use single byte singletons (GH-30781)
2022-01-23 09:45:39 -08:00
Christian Heimes
c02e860ee7
bpo-40280: Misc fixes for wasm32-emscripten (GH-30722)
2022-01-20 18:56:33 +01:00
Kumar Aditya
ef3ef6fa43
bpo-46429: Merge all deepfrozen files into one (GH-30572)
2022-01-20 08:38:39 -08:00
Kumar Aditya
194ecc6d44
bpo-46443: deepfreeze: use small ints and singleton zero bytes (GH-30715)
2022-01-19 22:13:21 -08:00
bneuburg
c47c9e6589
bpo-44934: Add optional feature AppendPath to Windows MSI installer (GH-27889)
...
The option must be enabled from the command line
2022-01-18 00:18:44 +00:00
Christian Heimes
ee1a8b336d
bpo-40280: Block more syscalls that are causing crashes in tests (GH-30601)
2022-01-14 18:48:44 +01:00
Christian Heimes
a6ca8eee22
bpo-46315: Add ifdef HAVE_ feature checks for WASI compatibility (GH-30507)
2022-01-13 09:46:04 +01:00
Christian Heimes
43839ba438
bpo-40280: Add --with-emscripten-target to build for browser or node (GH-30552)
...
Co-authored-by: Ethan Smith <ethan@ethanhs.me>
2022-01-12 16:08:19 +01:00
Ethan Smith
5c66414b55
bpo-40280: Disable epoll_create in Emscripten config.site (GH-30494)
...
Co-authored-by: nick.pope@infogrid.io
2022-01-09 11:58:59 +01:00
Brandt Bucher
332e6b9725
bpo-45256: Don't track the exact depth of each `InterpreterFrame` (GH-30372)
2022-01-05 11:30:26 +00:00
Dennis Sweeney
7537f60087
bpo-45609: More specialization stats for STORE_SUBSCR (GH-30193)
2022-01-04 18:05:09 +00:00
Pablo Galindo Salgado
dd6c35761a
bpo-46110: Restore commit e9898bf153
...
This restores commit e9898bf153
.
2022-01-03 19:54:06 +00:00
Pablo Galindo Salgado
9d35dedc5e
Revert "bpo-46110: Add a recursion check to avoid stack overflow in the PEG parser (GH-30177)" (GH-30363)
...
This reverts commit e9898bf153
temporarily as we want to confirm if this commit is the cause of a slowdown at startup time.
2022-01-03 18:29:18 +00:00
Hugo van Kemenade
2cf7d02b99
bpo-46178: Remove/rename redundant Travis CI code ( #30309 )
2021-12-30 16:16:27 -08:00
Dong-hee Na
196b53eb1e
bpo-45189: Drop the "list_frozen" command from _test_embed. (GH-30273)
2021-12-28 11:05:50 +09:00
Kumar Aditya
fc54e722a2
bpo-46106: Update OpenSSL to 1.1.1m (GH-30211)
...
Co-authored-by: Ned Deily <nad@python.org>
2021-12-21 21:20:16 -05:00
Pablo Galindo Salgado
e9898bf153
bpo-46110: Add a recursion check to avoid stack overflow in the PEG parser (GH-30177)
...
Co-authored-by: Batuhan Taskaya <isidentical@gmail.com>
2021-12-20 15:43:26 +00:00
Raymond Hettinger
29ea68bd1d
Revert "bpo-46131: add fastpath for PyFloat_Check() (GH-30200)" (GH-30208)
...
This reverts commit 2ef06d4125
.
2021-12-19 15:05:46 -06:00
Matti Picus
2ef06d4125
bpo-46131: add fastpath for PyFloat_Check() ( #30200 )
2021-12-19 14:24:30 -06:00
Christian Heimes
0339434835
bpo-40280: Add Tools/wasm with helpers for cross building (GH-29984)
...
Co-authored-by: Ethan Smith <ethan@ethanhs.me>
Co-authored-by: Brett Cannon <brett@python.org>
2021-12-18 15:54:02 +01:00
Christian Heimes
2985feac4e
bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170)
2021-12-17 16:17:32 +01:00
Mark Shannon
efd6236d36
bpo-46072: Add top level stats struct (GH-30169)
2021-12-17 14:48:01 +00:00
Mark Shannon
4506bbede1
bpo-46072: Document --enable-stats option. (GH-30139)
2021-12-16 13:40:54 +00:00
Mark Shannon
342b93f9f2
bpo-46072: Add --with-pystats configure option to simplify gathering of VM stats (GH-30116)
...
* Simplify specialization stats collection macros.
* Add --enable-pystats option to configure.
* Update specialization summary script to handle larger number of kinds
2021-12-15 15:32:32 +00:00
Christian Heimes
eb483c46d6
bpo-45949: Pure Python freeze module for cross builds (GH-29899)
2021-12-13 20:48:46 +01:00
Petr Viktorin
98e506ae8a
bpo-43795: Document stable_abi.txt format and contents (GH-29956)
...
Also mention that removals generally aren't allowed.
2021-12-11 00:34:31 +01:00
Christian Heimes
16638a4bdb
bpo-45654: No need to freeze types (GH-30028)
2021-12-10 19:09:09 +01:00
Serhiy Storchaka
d8a464ef03
Remove an outdated comment. (GH-30010)
2021-12-09 20:44:36 +02:00
Kumar Aditya
44b0e76f2a
bpo-45654: Freeze the runpy module and stuff it imports (GH-29903)
2021-12-09 08:51:09 -08:00
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
Crowthebird
d9301703fb
bpo-45816: Support building with VS 2022 (v143 toolset) on Windows (GH-29577)
2021-12-03 19:47:38 +00:00
Christian Heimes
84ca1232b0
bpo-45950: Introduce Bootstrap Python again ( #29859 )
...
The build system now uses a :program:`_bootstrap_python` interpreter for
freezing and deepfreezing again. To speed up build process the build tools
:program:`_bootstrap_python` and :program:`_freeze_module` are no longer
build with LTO.
Cross building depends on a build Python interpreter, which must have same
version and bytecode as target host Python.
2021-12-03 16:01:11 +01:00
Eric Snow
ee94aa0850
bpo-45952: Get the C analyzer tool working again. (gh-29882)
...
There wasn't much that needed to be done. Mostly it was just a few new files that got added.
https://bugs.python.org/issue45952
2021-12-01 11:20:20 -07:00
Inada Naoki
9a5dec4e97
Fix EncodingWarning in Tools/freeze/test/freeze.py (GH-29742)
2021-11-30 13:16:40 +09:00