summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
Diffstat (limited to 'Objects')
-rw-r--r--Objects/longobject.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/Objects/longobject.c b/Objects/longobject.c
index 18b0839..3b6df12 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -3119,16 +3119,14 @@ x_sub(PyLongObject *a, PyLongObject *b)
return maybe_small_long(long_normalize(z));
}
-static PyObject *
-long_add(PyLongObject *a, PyLongObject *b)
+PyObject *
+_PyLong_Add(PyLongObject *a, PyLongObject *b)
{
- PyLongObject *z;
-
- CHECK_BINOP(a, b);
-
if (IS_MEDIUM_VALUE(a) && IS_MEDIUM_VALUE(b)) {
return _PyLong_FromSTwoDigits(medium_value(a) + medium_value(b));
}
+
+ PyLongObject *z;
if (Py_SIZE(a) < 0) {
if (Py_SIZE(b) < 0) {
z = x_add(a, b);
@@ -3154,6 +3152,14 @@ long_add(PyLongObject *a, PyLongObject *b)
}
static PyObject *
+long_add(PyLongObject *a, PyLongObject *b)
+{
+ CHECK_BINOP(a, b);
+ return _PyLong_Add(a, b);
+}
+
+
+static PyObject *
long_sub(PyLongObject *a, PyLongObject *b)
{
PyLongObject *z;