diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2024-06-24 06:49:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-24 06:49:01 (GMT) |
commit | 02df6795743ee4ee26a07986edbb5e22ae9fec8b (patch) | |
tree | df7c0e397621b2126f1691250a194d461d8b36ab /Modules | |
parent | 35e998f5608b04cdd331e67dd80d4829df71a5fd (diff) | |
download | cpython-02df6795743ee4ee26a07986edbb5e22ae9fec8b.zip cpython-02df6795743ee4ee26a07986edbb5e22ae9fec8b.tar.gz cpython-02df6795743ee4ee26a07986edbb5e22ae9fec8b.tar.bz2 |
Use _PyLong_IsNegative instead of _PyLong_Sign if appropriate. (GH-120493)
It is faster and more obvious.
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_ctypes/_ctypes.c | 2 | ||||
-rw-r--r-- | Modules/_interpretersmodule.c | 1 | ||||
-rw-r--r-- | Modules/_io/_iomodule.c | 7 |
3 files changed, 3 insertions, 7 deletions
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c index 1d95346..222700b 100644 --- a/Modules/_ctypes/_ctypes.c +++ b/Modules/_ctypes/_ctypes.c @@ -1606,7 +1606,7 @@ PyCArrayType_init(PyObject *self, PyObject *args, PyObject *kwds) goto error; } - if (_PyLong_Sign(length_attr) == -1) { + if (_PyLong_IsNegative((PyLongObject *)length_attr)) { Py_DECREF(length_attr); PyErr_SetString(PyExc_ValueError, "The '_length_' attribute must not be negative"); diff --git a/Modules/_interpretersmodule.c b/Modules/_interpretersmodule.c index 6df6952..6f3392f 100644 --- a/Modules/_interpretersmodule.c +++ b/Modules/_interpretersmodule.c @@ -10,7 +10,6 @@ #include "pycore_crossinterp.h" // struct _xid #include "pycore_interp.h" // _PyInterpreterState_IDIncref() #include "pycore_initconfig.h" // _PyErr_SetFromPyStatus() -#include "pycore_long.h" // _PyLong_IsNegative() #include "pycore_modsupport.h" // _PyArg_BadArgument() #include "pycore_namespace.h" // _PyNamespace_New() #include "pycore_pybuffer.h" // _PyBuffer_ReleaseInInterpreterAndRawFree() diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c index 269070f..d236098 100644 --- a/Modules/_io/_iomodule.c +++ b/Modules/_io/_iomodule.c @@ -10,7 +10,7 @@ #include "Python.h" #include "pycore_abstract.h" // _PyNumber_Index() #include "pycore_initconfig.h" // _PyStatus_OK() -#include "pycore_long.h" // _PyLong_Sign() +#include "pycore_long.h" // _PyLong_IsNegative() #include "pycore_pyerrors.h" // _PyErr_ChainExceptions1() #include "pycore_pystate.h" // _PyInterpreterState_GET() @@ -544,10 +544,7 @@ PyNumber_AsOff_t(PyObject *item, PyObject *err) */ if (!err) { assert(PyLong_Check(value)); - /* Whether or not it is less than or equal to - zero is determined by the sign of ob_size - */ - if (_PyLong_Sign(value) < 0) + if (_PyLong_IsNegative((PyLongObject *)value)) result = PY_OFF_T_MIN; else result = PY_OFF_T_MAX; |