fix(python): preserve code objects after STORE_SLICE (#7815)

This commit is contained in:
morluto authored and GitHub committed 2026-10-29 01:11:27 +08:00
1 parent af1ccb6506
commit a6295e433b
2 files changed
+33 -26

No files matched your search

+3 -25
View File
@@ -38,6 +38,8 @@ const inlineCacheProfiles = (
* 22e65eecaad3f5337862319687047afe9861e1ef (3563), and
* 52cc4af6ae9002f11605f91b672746c127494efd (3564). Adjacent magics share a
* profile only where their source changes do not alter cache widths or IDs.
* Final 3.13 magic 3571 matches the opcode IDs and cache widths in CPython
* v3.13.17's Lib/_opcode_metadata.py and Lib/opcode.py.
*/
const INLINE_CACHE_ENTRIES_BY_MAGIC: ReadonlyMap<
number,
@@ -391,7 +393,7 @@ const INLINE_CACHE_ENTRIES_BY_MAGIC: ReadonlyMap<
],
),
...inlineCacheProfiles(
[3569, 3570],
[3569, 3570, 3571],
[
[5, 1],
[39, 1],
@@ -414,30 +416,6 @@ const INLINE_CACHE_ENTRIES_BY_MAGIC: ReadonlyMap<
[117, 1],
],
),
...inlineCacheProfiles(
[3571],
[
[5, 1],
[38, 1],
[39, 3],
[44, 1],
[52, 3],
[57, 1],
[58, 1],
[71, 1],
[76, 1],
[81, 9],
[91, 4],
[93, 1],
[97, 1],
[98, 1],
[99, 1],
[100, 1],
[104, 1],
[108, 4],
[117, 1],
],
),
]);
/** Preserve CPython's bytecode-size check and omit only cache code units. */