@@ -2061,7 +2061,7 @@ dummy_func(
2061
2061
2062
2062
assert (Py_TYPE (owner_o )-> tp_flags & Py_TPFLAGS_MANAGED_DICT );
2063
2063
PyDictObject * dict = _PyObject_GetManagedDict (owner_o );
2064
- DEOPT_IF (dict == NULL );
2064
+ EXIT_IF (dict == NULL );
2065
2065
assert (PyDict_CheckExact ((PyObject * )dict ));
2066
2066
}
2067
2067
@@ -2112,9 +2112,9 @@ dummy_func(
2112
2112
op (_CHECK_ATTR_CLASS , (type_version /2 , owner -- owner )) {
2113
2113
PyObject * owner_o = PyStackRef_AsPyObjectBorrow (owner );
2114
2114
2115
- DEOPT_IF (!PyType_Check (owner_o ));
2115
+ EXIT_IF (!PyType_Check (owner_o ));
2116
2116
assert (type_version != 0 );
2117
- DEOPT_IF (((PyTypeObject * )owner_o )-> tp_version_tag != type_version );
2117
+ EXIT_IF (((PyTypeObject * )owner_o )-> tp_version_tag != type_version );
2118
2118
2119
2119
}
2120
2120
@@ -2189,8 +2189,8 @@ dummy_func(
2189
2189
2190
2190
assert (Py_TYPE (owner_o )-> tp_dictoffset < 0 );
2191
2191
assert (Py_TYPE (owner_o )-> tp_flags & Py_TPFLAGS_INLINE_VALUES );
2192
- DEOPT_IF (_PyObject_GetManagedDict (owner_o ));
2193
- DEOPT_IF (_PyObject_InlineValues (owner_o )-> valid == 0 );
2192
+ EXIT_IF (_PyObject_GetManagedDict (owner_o ));
2193
+ EXIT_IF (_PyObject_InlineValues (owner_o )-> valid == 0 );
2194
2194
}
2195
2195
2196
2196
op (_STORE_ATTR_INSTANCE_VALUE , (index /1 , value , owner -- )) {
@@ -3655,11 +3655,11 @@ dummy_func(
3655
3655
args -- ;
3656
3656
total_args ++ ;
3657
3657
}
3658
- DEOPT_IF (total_args != 1 );
3659
- DEOPT_IF (!PyCFunction_CheckExact (callable_o ));
3660
- DEOPT_IF (PyCFunction_GET_FLAGS (callable_o ) != METH_O );
3658
+ EXIT_IF (total_args != 1 );
3659
+ EXIT_IF (!PyCFunction_CheckExact (callable_o ));
3660
+ EXIT_IF (PyCFunction_GET_FLAGS (callable_o ) != METH_O );
3661
3661
// CPython promises to check all non-vectorcall function calls.
3662
- DEOPT_IF (tstate -> c_recursion_remaining <= 0 );
3662
+ EXIT_IF (tstate -> c_recursion_remaining <= 0 );
3663
3663
STAT_INC (CALL , hit );
3664
3664
PyCFunction cfunc = PyCFunction_GET_FUNCTION (callable_o );
3665
3665
_PyStackRef arg = args [0 ];
@@ -3851,15 +3851,15 @@ dummy_func(
3851
3851
}
3852
3852
3853
3853
PyMethodDescrObject * method = (PyMethodDescrObject * )callable_o ;
3854
- DEOPT_IF (total_args != 2 );
3855
- DEOPT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3854
+ EXIT_IF (total_args != 2 );
3855
+ EXIT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3856
3856
PyMethodDef * meth = method -> d_method ;
3857
- DEOPT_IF (meth -> ml_flags != METH_O );
3857
+ EXIT_IF (meth -> ml_flags != METH_O );
3858
3858
// CPython promises to check all non-vectorcall function calls.
3859
- DEOPT_IF (tstate -> c_recursion_remaining <= 0 );
3859
+ EXIT_IF (tstate -> c_recursion_remaining <= 0 );
3860
3860
_PyStackRef arg_stackref = args [1 ];
3861
3861
_PyStackRef self_stackref = args [0 ];
3862
- DEOPT_IF (!Py_IS_TYPE (PyStackRef_AsPyObjectBorrow (self_stackref ),
3862
+ EXIT_IF (!Py_IS_TYPE (PyStackRef_AsPyObjectBorrow (self_stackref ),
3863
3863
method -> d_common .d_type ));
3864
3864
STAT_INC (CALL , hit );
3865
3865
PyCFunction cfunc = meth -> ml_meth ;
@@ -3891,12 +3891,12 @@ dummy_func(
3891
3891
total_args ++ ;
3892
3892
}
3893
3893
PyMethodDescrObject * method = (PyMethodDescrObject * )callable_o ;
3894
- DEOPT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3894
+ EXIT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3895
3895
PyMethodDef * meth = method -> d_method ;
3896
- DEOPT_IF (meth -> ml_flags != (METH_FASTCALL |METH_KEYWORDS ));
3896
+ EXIT_IF (meth -> ml_flags != (METH_FASTCALL |METH_KEYWORDS ));
3897
3897
PyTypeObject * d_type = method -> d_common .d_type ;
3898
3898
PyObject * self = PyStackRef_AsPyObjectBorrow (args [0 ]);
3899
- DEOPT_IF (!Py_IS_TYPE (self , d_type ));
3899
+ EXIT_IF (!Py_IS_TYPE (self , d_type ));
3900
3900
STAT_INC (CALL , hit );
3901
3901
int nargs = total_args - 1 ;
3902
3902
PyCFunctionFastWithKeywords cfunc =
@@ -3935,16 +3935,16 @@ dummy_func(
3935
3935
args -- ;
3936
3936
total_args ++ ;
3937
3937
}
3938
- DEOPT_IF (total_args != 1 );
3938
+ EXIT_IF (total_args != 1 );
3939
3939
PyMethodDescrObject * method = (PyMethodDescrObject * )callable_o ;
3940
- DEOPT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3940
+ EXIT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3941
3941
PyMethodDef * meth = method -> d_method ;
3942
3942
_PyStackRef self_stackref = args [0 ];
3943
3943
PyObject * self = PyStackRef_AsPyObjectBorrow (self_stackref );
3944
- DEOPT_IF (!Py_IS_TYPE (self , method -> d_common .d_type ));
3945
- DEOPT_IF (meth -> ml_flags != METH_NOARGS );
3944
+ EXIT_IF (!Py_IS_TYPE (self , method -> d_common .d_type ));
3945
+ EXIT_IF (meth -> ml_flags != METH_NOARGS );
3946
3946
// CPython promises to check all non-vectorcall function calls.
3947
- DEOPT_IF (tstate -> c_recursion_remaining <= 0 );
3947
+ EXIT_IF (tstate -> c_recursion_remaining <= 0 );
3948
3948
STAT_INC (CALL , hit );
3949
3949
PyCFunction cfunc = meth -> ml_meth ;
3950
3950
_Py_EnterRecursiveCallTstateUnchecked (tstate );
@@ -3973,11 +3973,11 @@ dummy_func(
3973
3973
}
3974
3974
PyMethodDescrObject * method = (PyMethodDescrObject * )callable_o ;
3975
3975
/* Builtin METH_FASTCALL methods, without keywords */
3976
- DEOPT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3976
+ EXIT_IF (!Py_IS_TYPE (method , & PyMethodDescr_Type ));
3977
3977
PyMethodDef * meth = method -> d_method ;
3978
- DEOPT_IF (meth -> ml_flags != METH_FASTCALL );
3978
+ EXIT_IF (meth -> ml_flags != METH_FASTCALL );
3979
3979
PyObject * self = PyStackRef_AsPyObjectBorrow (args [0 ]);
3980
- DEOPT_IF (!Py_IS_TYPE (self , method -> d_common .d_type ));
3980
+ EXIT_IF (!Py_IS_TYPE (self , method -> d_common .d_type ));
3981
3981
STAT_INC (CALL , hit );
3982
3982
PyCFunctionFast cfunc =
3983
3983
(PyCFunctionFast )(void (* )(void ))meth -> ml_meth ;
0 commit comments