@@ -1927,6 +1927,7 @@ dummy_func(
1927
1927
PyStackRef_CLOSE (value );
1928
1928
}
1929
1929
}
1930
+ DEAD (values );
1930
1931
if (err ) {
1931
1932
Py_DECREF (set_o );
1932
1933
ERROR_IF (true, error );
@@ -3583,15 +3584,15 @@ dummy_func(
3583
3584
#endif /* ENABLE_SPECIALIZATION_FT */
3584
3585
}
3585
3586
3586
- op (_MAYBE_EXPAND_METHOD , (callable [1 ], self_or_null [1 ], args [oparg ] -- func [1 ], maybe_self [1 ], args [oparg ])) {
3587
+ op (_MAYBE_EXPAND_METHOD , (callable [1 ], self_or_null [1 ], args [oparg ] -- callable [1 ], self_or_null [1 ], args [oparg ])) {
3587
3588
(void )args ;
3588
3589
if (PyStackRef_TYPE (callable [0 ]) == & PyMethod_Type && PyStackRef_IsNull (self_or_null [0 ])) {
3589
3590
PyObject * callable_o = PyStackRef_AsPyObjectBorrow (callable [0 ]);
3590
3591
PyObject * self = ((PyMethodObject * )callable_o )-> im_self ;
3591
- maybe_self [0 ] = PyStackRef_FromPyObjectNew (self );
3592
+ self_or_null [0 ] = PyStackRef_FromPyObjectNew (self );
3592
3593
PyObject * method = ((PyMethodObject * )callable_o )-> im_func ;
3593
3594
_PyStackRef temp = callable [0 ];
3594
- func [0 ] = PyStackRef_FromPyObjectNew (method );
3595
+ callable [0 ] = PyStackRef_FromPyObjectNew (method );
3595
3596
PyStackRef_CLOSE (temp );
3596
3597
}
3597
3598
}
@@ -3618,6 +3619,9 @@ dummy_func(
3618
3619
tstate , callable [0 ], locals ,
3619
3620
arguments , total_args , NULL , frame
3620
3621
);
3622
+ DEAD (args );
3623
+ DEAD (self_or_null );
3624
+ DEAD (callable );
3621
3625
// Manipulate stack directly since we leave using DISPATCH_INLINED().
3622
3626
SYNC_SP ();
3623
3627
// The frame has stolen all the arguments from the stack,
@@ -3950,10 +3954,10 @@ dummy_func(
3950
3954
_CALL_TUPLE_1 +
3951
3955
_CHECK_PERIODIC ;
3952
3956
3953
- op (_CHECK_AND_ALLOCATE_OBJECT , (type_version /2 , callable [1 ], null [1 ], args [oparg ] -- init [1 ], self [1 ], args [oparg ])) {
3957
+ op (_CHECK_AND_ALLOCATE_OBJECT , (type_version /2 , callable [1 ], self_or_null [1 ], args [oparg ] -- callable [1 ], self_or_null [1 ], args [oparg ])) {
3954
3958
(void )args ;
3955
3959
PyObject * callable_o = PyStackRef_AsPyObjectBorrow (callable [0 ]);
3956
- DEOPT_IF (!PyStackRef_IsNull (null [0 ]));
3960
+ DEOPT_IF (!PyStackRef_IsNull (self_or_null [0 ]));
3957
3961
DEOPT_IF (!PyType_Check (callable_o ));
3958
3962
PyTypeObject * tp = (PyTypeObject * )callable_o ;
3959
3963
DEOPT_IF (FT_ATOMIC_LOAD_UINT32_RELAXED (tp -> tp_version_tag ) != type_version );
@@ -3969,9 +3973,9 @@ dummy_func(
3969
3973
if (self_o == NULL ) {
3970
3974
ERROR_NO_POP ();
3971
3975
}
3972
- self [0 ] = PyStackRef_FromPyObjectSteal (self_o );
3976
+ self_or_null [0 ] = PyStackRef_FromPyObjectSteal (self_o );
3973
3977
_PyStackRef temp = callable [0 ];
3974
- init [0 ] = PyStackRef_FromPyObjectNew (init_func );
3978
+ callable [0 ] = PyStackRef_FromPyObjectNew (init_func );
3975
3979
PyStackRef_CLOSE (temp );
3976
3980
}
3977
3981
@@ -3982,10 +3986,11 @@ dummy_func(
3982
3986
assert (_PyFrame_GetBytecode (shim )[1 ].op .code == RETURN_VALUE );
3983
3987
/* Push self onto stack of shim */
3984
3988
shim -> localsplus [0 ] = PyStackRef_DUP (self [0 ]);
3985
- DEAD (init );
3986
- DEAD (self );
3987
3989
_PyInterpreterFrame * temp = _PyEvalFramePushAndInit (
3988
3990
tstate , init [0 ], NULL , args - 1 , oparg + 1 , NULL , shim );
3991
+ DEAD (init );
3992
+ DEAD (self );
3993
+ DEAD (args );
3989
3994
SYNC_SP ();
3990
3995
if (temp == NULL ) {
3991
3996
_PyEval_FrameClearAndPop (tstate , shim );
@@ -4187,9 +4192,9 @@ dummy_func(
4187
4192
res = PyStackRef_FromPyObjectSteal (res_o );
4188
4193
}
4189
4194
4190
- inst (CALL_ISINSTANCE , (unused /1 , unused /2 , callable [ 1 ] , self_or_null [1 ], args [oparg ] -- res )) {
4195
+ inst (CALL_ISINSTANCE , (unused /1 , unused /2 , callable , self_or_null [1 ], args [oparg ] -- res )) {
4191
4196
/* isinstance(o, o2) */
4192
- PyObject * callable_o = PyStackRef_AsPyObjectBorrow (callable [ 0 ] );
4197
+ PyObject * callable_o = PyStackRef_AsPyObjectBorrow (callable );
4193
4198
4194
4199
int total_args = oparg ;
4195
4200
_PyStackRef * arguments = args ;
@@ -4420,15 +4425,15 @@ dummy_func(
4420
4425
ERROR_IF (err , error );
4421
4426
}
4422
4427
4423
- op (_MAYBE_EXPAND_METHOD_KW , (callable [1 ], self_or_null [1 ], args [oparg ], kwnames_in -- func [1 ], maybe_self [1 ], args [oparg ], kwnames_out )) {
4428
+ op (_MAYBE_EXPAND_METHOD_KW , (callable [1 ], self_or_null [1 ], args [oparg ], kwnames_in -- callable [1 ], self_or_null [1 ], args [oparg ], kwnames_out )) {
4424
4429
(void )args ;
4425
4430
if (PyStackRef_TYPE (callable [0 ]) == & PyMethod_Type && PyStackRef_IsNull (self_or_null [0 ])) {
4426
4431
PyObject * callable_o = PyStackRef_AsPyObjectBorrow (callable [0 ]);
4427
4432
PyObject * self = ((PyMethodObject * )callable_o )-> im_self ;
4428
- maybe_self [0 ] = PyStackRef_FromPyObjectNew (self );
4433
+ self_or_null [0 ] = PyStackRef_FromPyObjectNew (self );
4429
4434
PyObject * method = ((PyMethodObject * )callable_o )-> im_func ;
4430
4435
_PyStackRef temp = callable [0 ];
4431
- func [0 ] = PyStackRef_FromPyObjectNew (method );
4436
+ callable [0 ] = PyStackRef_FromPyObjectNew (method );
4432
4437
PyStackRef_CLOSE (temp );
4433
4438
}
4434
4439
kwnames_out = kwnames_in ;
@@ -4458,6 +4463,9 @@ dummy_func(
4458
4463
tstate , callable [0 ], locals ,
4459
4464
arguments , positional_args , kwnames_o , frame
4460
4465
);
4466
+ DEAD (args );
4467
+ DEAD (self_or_null );
4468
+ DEAD (callable );
4461
4469
PyStackRef_CLOSE (kwnames );
4462
4470
// Sync stack explicitly since we leave using DISPATCH_INLINED().
4463
4471
SYNC_SP ();
@@ -4525,6 +4533,9 @@ dummy_func(
4525
4533
PyStackRef_CLOSE (kwnames );
4526
4534
// The frame has stolen all the arguments from the stack,
4527
4535
// so there is no need to clean them up.
4536
+ DEAD (args );
4537
+ DEAD (self_or_null );
4538
+ DEAD (callable );
4528
4539
SYNC_SP ();
4529
4540
ERROR_IF (temp == NULL , error );
4530
4541
new_frame = temp ;
0 commit comments