File tree 2 files changed +14
-7
lines changed 2 files changed +14
-7
lines changed Original file line number Diff line number Diff line change 24
24
#define MAX_EXECUTORS_SIZE 256
25
25
26
26
#ifdef Py_DEBUG
27
- static int base_opcode (PyCodeObject * code , int offset )
27
+ static int
28
+ base_opcode (PyCodeObject * code , int offset )
28
29
{
29
30
int opcode = _Py_GetBaseOpcode (code , offset );
30
31
if (opcode == ENTER_EXECUTOR ) {
@@ -788,11 +789,13 @@ translate_bytecode_to_trace(
788
789
uop = _PyUOp_Replacements [uop ];
789
790
assert (uop != 0 );
790
791
#ifdef Py_DEBUG
791
- uint32_t next_inst = target + 1 + INLINE_CACHE_ENTRIES_FOR_ITER + (oparg > 255 );
792
- uint32_t jump_target = next_inst + oparg ;
793
- assert (base_opcode (code , jump_target ) == END_FOR ||
794
- base_opcode (code , jump_target ) == INSTRUMENTED_END_FOR );
795
- assert (base_opcode (code , jump_target + 1 ) == POP_TOP );
792
+ {
793
+ uint32_t next_inst = target + 1 + INLINE_CACHE_ENTRIES_FOR_ITER + (oparg > 255 );
794
+ uint32_t jump_target = next_inst + oparg ;
795
+ assert (base_opcode (code , jump_target ) == END_FOR ||
796
+ base_opcode (code , jump_target ) == INSTRUMENTED_END_FOR );
797
+ assert (base_opcode (code , jump_target + 1 ) == POP_TOP );
798
+ }
796
799
#endif
797
800
break ;
798
801
default :
Original file line number Diff line number Diff line change @@ -178,8 +178,12 @@ _Py_uop_sym_set_null(_Py_UopsSymbol *sym)
178
178
bool
179
179
_Py_uop_sym_set_non_null (_Py_UopsSymbol * sym )
180
180
{
181
+ if (_Py_uop_sym_is_null (sym )) {
182
+ sym_set_bottom (sym );
183
+ return false;
184
+ }
181
185
sym_set_flag (sym , NOT_NULL );
182
- return ! _Py_uop_sym_is_bottom ( sym ) ;
186
+ return true ;
183
187
}
184
188
185
189
You can’t perform that action at this time.
0 commit comments