From: Raymond Hettinger Date: Tue, 18 Mar 2008 23:22:29 +0000 (+0000) Subject: Speed-up isinstance() for one easy case. X-Git-Tag: v2.6a2~250 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9a47e6201f7604f96d302d90eea2a1dd382c491f;p=thirdparty%2FPython%2Fcpython.git Speed-up isinstance() for one easy case. --- diff --git a/Objects/abstract.c b/Objects/abstract.c index 0ea26d6e4b7f..3315b0eb632d 100644 --- a/Objects/abstract.c +++ b/Objects/abstract.c @@ -2909,6 +2909,11 @@ PyObject_IsInstance(PyObject *inst, PyObject *cls) static PyObject *name = NULL; PyObject *t, *v, *tb; PyObject *checker; + + /* Quick test for an exact match */ + if (Py_TYPE(inst) == cls) + return 1; + PyErr_Fetch(&t, &v, &tb); if (name == NULL) {