Kaydet (Commit) c1c4a64e authored tarafından Mark Dickinson's avatar Mark Dickinson

Issue #27111: Minor simplication to long_add and long_sub fast path code. Thanks Oren Milman.

üst fba121fe
...@@ -3103,9 +3103,7 @@ long_add(PyLongObject *a, PyLongObject *b) ...@@ -3103,9 +3103,7 @@ long_add(PyLongObject *a, PyLongObject *b)
CHECK_BINOP(a, b); CHECK_BINOP(a, b);
if (Py_ABS(Py_SIZE(a)) <= 1 && Py_ABS(Py_SIZE(b)) <= 1) { if (Py_ABS(Py_SIZE(a)) <= 1 && Py_ABS(Py_SIZE(b)) <= 1) {
PyObject *result = PyLong_FromLong(MEDIUM_VALUE(a) + return PyLong_FromLong(MEDIUM_VALUE(a) + MEDIUM_VALUE(b));
MEDIUM_VALUE(b));
return result;
} }
if (Py_SIZE(a) < 0) { if (Py_SIZE(a) < 0) {
if (Py_SIZE(b) < 0) { if (Py_SIZE(b) < 0) {
...@@ -3139,9 +3137,7 @@ long_sub(PyLongObject *a, PyLongObject *b) ...@@ -3139,9 +3137,7 @@ long_sub(PyLongObject *a, PyLongObject *b)
CHECK_BINOP(a, b); CHECK_BINOP(a, b);
if (Py_ABS(Py_SIZE(a)) <= 1 && Py_ABS(Py_SIZE(b)) <= 1) { if (Py_ABS(Py_SIZE(a)) <= 1 && Py_ABS(Py_SIZE(b)) <= 1) {
PyObject* r; return PyLong_FromLong(MEDIUM_VALUE(a) - MEDIUM_VALUE(b));
r = PyLong_FromLong(MEDIUM_VALUE(a)-MEDIUM_VALUE(b));
return r;
} }
if (Py_SIZE(a) < 0) { if (Py_SIZE(a) < 0) {
if (Py_SIZE(b) < 0) if (Py_SIZE(b) < 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment