]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-131798: Fix `_ITER_CHECK_RANGE` type in the JIT (#148607)
authorWulian233 <1055917385@qq.com>
Wed, 15 Apr 2026 12:22:55 +0000 (20:22 +0800)
committerGitHub <noreply@github.com>
Wed, 15 Apr 2026 12:22:55 +0000 (12:22 +0000)
Python/optimizer_bytecodes.c
Python/optimizer_cases.c.h

index d7d8b90ebabd6d13eba5ecce063779644d2a9495..7ffd835ad120c94f8be49b076aad348159583a3f 100644 (file)
@@ -1468,11 +1468,11 @@ dummy_func(void) {
     }
 
     op(_ITER_CHECK_RANGE, (iter, null_or_index -- iter, null_or_index)) {
-        if (sym_matches_type(iter, &PyRange_Type)) {
+        if (sym_matches_type(iter, &PyRangeIter_Type)) {
             ADD_OP(_NOP, 0, 0);
         }
         else {
-            sym_set_type(iter, &PyRange_Type);
+            sym_set_type(iter, &PyRangeIter_Type);
         }
     }
 
index bc6391d85d76cd56109398b63319c9d069bc37fe..d2caa6fc7a7882d0bc9717c80a4d8deed93f97ad 100644 (file)
         case _ITER_CHECK_RANGE: {
             JitOptRef iter;
             iter = stack_pointer[-2];
-            if (sym_matches_type(iter, &PyRange_Type)) {
+            if (sym_matches_type(iter, &PyRangeIter_Type)) {
                 ADD_OP(_NOP, 0, 0);
             }
             else {
-                sym_set_type(iter, &PyRange_Type);
+                sym_set_type(iter, &PyRangeIter_Type);
             }
             break;
         }