summaryrefslogtreecommitdiffstats
path: root/Python/specialize.c
Commit message (Collapse)AuthorAgeFilesLines
...
* bpo-45636: Remove the old %-formatting fast-path (GH-29532)Brandt Bucher2021-11-151-4/+8
|
* bpo-45636: Merge all numeric operators (GH-29482)Brandt Bucher2021-11-111-78/+65
|
* bpo-45527: Don't count cache hits, just misses. (GH-29092)Mark Shannon2021-10-201-14/+26
|
* bpo-44525: Specialize simple Python calls. (GH-29033)Mark Shannon2021-10-201-20/+87
|
* bpo-44525: Specialize ``CALL_FUNCTION`` for C function calls (GH-26934)Ken Jin2021-10-191-0/+147
|
* bpo-45434: Include stdlib.h for specialize stat (GH-29015)Dong-hee Na2021-10-181-1/+2
|
* bpo-45367: Specialize BINARY_MULTIPLY (GH-28727)Dennis Sweeney2021-10-141-0/+33
|
* bpo-45340: Don't create object dictionaries unless actually needed (GH-28802)Mark Shannon2021-10-131-74/+67
| | | | | | | | | | | | | | * Never change types' cached keys. It could invalidate inline attribute objects. * Lazily create object dictionaries. * Update specialization of LOAD/STORE_ATTR. * Don't update shared keys version for deletion of value. * Update gdb support to handle instance values. * Rename SPLIT_KEYS opcodes to INSTANCE_VALUE.
* Fix typos in the Python directory (GH-28767)Christian Clauss2021-10-061-1/+1
|
* bpo-45219: Factor dictkey indexing (GH-28389)Mark Shannon2021-09-171-20/+19
|
* bpo-45107: Make LOAD_METHOD_CLASS safer and faster, clean up comments (GH-28177)Ken Jin2021-09-171-8/+7
| | | | | * Improve comments * Check cls is a type, remove dict calculation
* bpo-45203: fix compiler warnings (GH-28357)Ken Jin2021-09-171-0/+1
| | | Co-authored-by: Mark Shannon <mark@hotpy.org>
* bpo-45203: Cleanup stats gathering code for LOAD_METHOD (GH-28352)Mark Shannon2021-09-151-41/+39
|
* Refine specialization stats (GH-27992)Mark Shannon2021-08-271-17/+89
|
* bpo-44945: Specialize BINARY_ADD (GH-27967)Mark Shannon2021-08-271-6/+56
|
* bpo-44889: Specialize LOAD_METHOD with PEP 659 adaptive interpreter (GH-27722)Ken Jin2021-08-171-10/+180
| | | | | | | | Adds four new instructions: * LOAD_METHOD_ADAPTIVE * LOAD_METHOD_CACHED * LOAD_METHOD_MODULE * LOAD_METHOD_CLASS
* bpo-44900: Add five superinstructions. (GH-27741)Mark Shannon2021-08-161-5/+24
| | | | | | | | * LOAD_FAST LOAD_FAST * STORE_FAST LOAD_FAST * LOAD_FAST LOAD_CONST * LOAD_CONST LOAD_FAST * STORE_FAST STORE_FAST
* bpo-44890: collect specialization stats if Py_DEBUG (GH-27731)Irit Katriel2021-08-121-6/+6
|
* Update test__opcode and _Py_GetSpecializationStats with recent ↵Irit Katriel2021-08-111-0/+1
| | | | specialization stat changes (GH-27728)
* Classify specialization failures. Provides more useful stats, with lower ↵Mark Shannon2021-08-101-96/+83
| | | | overhead. (GH-27701)
* bpo-44826: Specialize STORE_ATTR (GH-27590)Mark Shannon2021-08-091-70/+186
| | | | | | | * Generalize cache names for LOAD_ATTR to allow store and delete specializations. * Factor out specialization of attribute dictionary access. * Specialize STORE_ATTR.
* Add option to write specialization stats to files and script to summarize. ↵Mark Shannon2021-08-041-12/+31
| | | | | | | (GH-27575) * Add option to write stats to random file in a directory. * Add script to summarize stats.
* Minor fixes to specialization stats. (GH-27457)Mark Shannon2021-07-291-5/+8
| | | | | * Use class, not value for fail stats for BINARY_SUBSCR. * Fix counts for unquickened instructions.
* bpo-44725 : expose specialization stats in python (GH-27192)Irit Katriel2021-07-291-0/+78
|
* bpo-26280: Port BINARY_SUBSCR to PEP 659 adaptive interpreter (GH-27043)Irit Katriel2021-07-151-1/+47
|
* Add file describing how to add or modify specialized families of ↵Mark Shannon2021-07-011-0/+4
| | | | instructions. (GH-26954)
* bpo-44337: Improve LOAD_ATTR specialization (GH-26759)Mark Shannon2021-06-211-72/+176
| | | | | | | | * Specialize obj.__class__ with LOAD_ATTR_SLOT * Specialize instance attribute lookup with attribute on class, provided attribute on class is not an overriding descriptor. * Add stat for how many times the unquickened instruction has executed.
* Add extra stats for attribute misses (GH-26732)Mark Shannon2021-06-151-2/+85
|
* bpo-44338: Port LOAD_GLOBAL to PEP 659 adaptive interpreter (GH-26638)Mark Shannon2021-06-141-11/+89
| | | | | | | | | | * Add specializations of LOAD_GLOBAL. * Add more stats. * Remove old opcache; it is no longer used. * Add NEWS
* Add more const modifiers. (GH-26691)Serhiy Storchaka2021-06-121-1/+1
|
* bpo-44337: Port LOAD_ATTR to PEP 659 adaptive interpreter (GH-26595)Mark Shannon2021-06-101-2/+175
| | | | | | | | | | | | | | * Specialize LOAD_ATTR with LOAD_ATTR_SLOT and LOAD_ATTR_SPLIT_KEYS * Move dict-common.h to internal/pycore_dict.h * Add LOAD_ATTR_WITH_HINT specialized opcode. * Quicken in function if loopy * Specialize LOAD_ATTR for module attributes. * Add specialization stats
* bpo-44187: Quickening infrastructure (GH-26264)Mark Shannon2021-06-071-0/+197
* Add co_firstinstr field to code object. * Implement barebones quickening. * Use non-quickened bytecode when tracing. * Add NEWS item * Add new file to Windows build. * Don't specialize instructions with EXTENDED_ARG.