Skip to content

Commit 4e34e27

Browse files
committed
Specialize GET_ITER
1 parent ec12559 commit 4e34e27

17 files changed

+647
-422
lines changed

Include/internal/pycore_code.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,7 @@ extern void _Py_Specialize_CompareOp(_PyStackRef lhs, _PyStackRef rhs,
313313
_Py_CODEUNIT *instr, int oparg);
314314
extern void _Py_Specialize_UnpackSequence(_PyStackRef seq, _Py_CODEUNIT *instr,
315315
int oparg);
316+
extern void _Py_Specialize_GetIter(_PyStackRef iter, _Py_CODEUNIT *instr);
316317
extern void _Py_Specialize_ForIter(_PyStackRef iter, _PyStackRef null_or_index, _Py_CODEUNIT *instr, int oparg);
317318
extern void _Py_Specialize_Send(_PyStackRef receiver, _Py_CODEUNIT *instr);
318319
extern void _Py_Specialize_ToBool(_PyStackRef value, _Py_CODEUNIT *instr);

Include/internal/pycore_magic_number.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,9 @@ Known values:
279279
Python 3.14b1 3624 (Don't optimize LOAD_FAST when local is killed by DELETE_FAST)
280280
Python 3.15a0 3650 (Initial version)
281281
Python 3.15a1 3651 (Simplify LOAD_CONST)
282-
Python 3.15a1 3652 (Virtual iterators)
282+
283+
Python 3.14a7 3652 (Virtual iterators)
284+
Python 3.14a7 3653 (Specialize GET_ITER)
283285
284286
285287
Python 3.16 will start with 3700
@@ -293,7 +295,7 @@ PC/launcher.c must also be updated.
293295
294296
*/
295297

296-
#define PYC_MAGIC_NUMBER 3652
298+
#define PYC_MAGIC_NUMBER 3653
297299
/* This is equivalent to converting PYC_MAGIC_NUMBER to 2 bytes
298300
(little-endian) and then appending b'\r\n'. */
299301
#define PYC_MAGIC_NUMBER_TOKEN \

Include/internal/pycore_opcode_metadata.h

Lines changed: 18 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)