Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | bpo-37493: use _PyObject_CallNoArg in more places (GH-14575) | Jeroen Demeyer | 2019-07-04 | 1 | -1/+1 | |
| | ||||||
* | bpo-37483: add _PyObject_CallOneArg() function (#14558) | Jeroen Demeyer | 2019-07-04 | 1 | -2/+1 | |
| | ||||||
* | bpo-37165: Convert _count_elements to the argument clinic (GH-13848) | Raymond Hettinger | 2019-06-05 | 1 | -11/+16 | |
| | ||||||
* | bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async ↵ | Jeroen Demeyer | 2019-05-31 | 1 | -10/+10 | |
| | | | | | | | | | (GH-13464) Automatically replace tp_print -> tp_vectorcall_offset tp_compare -> tp_as_async tp_reserved -> tp_as_async | |||||
* | bpo-36254: Fix invalid uses of %d in format strings in C. (GH-12264) | Serhiy Storchaka | 2019-03-13 | 1 | -1/+1 | |
| | ||||||
* | Fix the C function signature for _collections._tuplegetter.__reduce__. ↵ | Serhiy Storchaka | 2019-03-05 | 1 | -2/+2 | |
| | | | | | (GH-12180) Correctly fixes bpo-36197. | |||||
* | bpo-33012: Fix compilation warnings in memoryobject.c and ↵ | Stéphane Wirtel | 2019-03-05 | 1 | -1/+1 | |
| | | | | | | _collectionsmodule.c (GH-12179) Cast function pointers to (void(*)(void)) before casting to (PyCFunction) to make "warning: cast between incompatible function types" false alarm quiet. | |||||
* | bpo-36068: Make _tuplegetter objects serializable (GH-11981) | Joe Jevnik | 2019-02-21 | 1 | -1/+12 | |
| | ||||||
* | Speed-up argument parsing for common cases in deque.__init__()(GH-11717) | Raymond Hettinger | 2019-02-01 | 1 | -3/+7 | |
| | ||||||
* | bpo-32492: Tweak _collections._tuplegetter. (GH-11367) | Serhiy Storchaka | 2018-12-31 | 1 | -8/+8 | |
| | | | | | | * Replace the docstrings cache with sys.intern(). * Improve tests. * Unify names of tp_descr_get and tp_descr_set functions. | |||||
* | bpo-32492: 1.6x speed up in namedtuple attribute access using C fast-path ↵ | Pablo Galindo | 2018-12-30 | 1 | -0/+163 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#10495) * bpo-32492: 2.5x speed up in namedtuple attribute access using C fast path * Add News entry * fixup! bpo-32492: 2.5x speed up in namedtuple attribute access using C fast path * Check for tuple in the __get__ of the new descriptor and don't cache the descriptor itself * Don't inherit from property. Implement GC methods to handle __doc__ * Add a test for the docstring substitution in descriptors * Update NEWS entry to reflect time against 3.7 branch * Simplify implementation with argument clinic, better error messages, only __new__ * Use positional-only parameters for the __new__ * Use PyTuple_GET_SIZE and PyTuple_GET_ITEM to tighter the implementation of tuplegetterdescr_get * Implement __set__ to make tuplegetter a data descriptor * Use Py_INCREF now that we inline PyTuple_GetItem * Apply the valid_index() function, saving one test * Move Py_None test out of the critical path. | |||||
* | bpo-33029: Fix signatures of getter and setter functions. (GH-10746) | Serhiy Storchaka | 2018-11-27 | 1 | -1/+1 | |
| | | | Fix also return type for few other functions (clear, releasebuffer). | |||||
* | bpo-33012: Fix invalid function cast warnings with gcc 8. (GH-6749) | Serhiy Storchaka | 2018-11-27 | 1 | -3/+3 | |
| | | | | | | Fix invalid function cast warnings with gcc 8 for method conventions different from METH_NOARGS, METH_O and METH_VARARGS excluding Argument Clinic generated code. | |||||
* | bpo-33012: Fix signatures of METH_NOARGS funstions. (GH-10736) | Serhiy Storchaka | 2018-11-27 | 1 | -1/+1 | |
| | ||||||
* | Minor performance tweak for deque.index() with a start argument (GH-9440) | Raymond Hettinger | 2018-09-21 | 1 | -2/+4 | |
| | ||||||
* | closes bpo-31608: Fix a crash in methods of a subclass of _collections.deque ↵ | Oren Milman | 2018-09-11 | 1 | -4/+13 | |
| | | | | with a bad __new__(). (GH-3788) | |||||
* | Factor-out two substantially identical code blocks. (GH-8219) | Raymond Hettinger | 2018-07-10 | 1 | -46/+10 | |
| | ||||||
* | bpo-33677: Fix signatures of tp_clear handlers for AST and deque. (GH-7196) | Serhiy Storchaka | 2018-05-31 | 1 | -3/+4 | |
| | ||||||
* | bpo-33012: Fix invalid function cast warnings with gcc 8 for METH_NOARGS. ↵ | Siddhesh Poyarekar | 2018-04-29 | 1 | -13/+13 | |
| | | | | | | | | | (GH-6030) METH_NOARGS functions need only a single argument but they are cast into a PyCFunction, which takes two arguments. This triggers an invalid function cast warning in gcc8 due to the argument mismatch. Fix this by adding a dummy unused argument. | |||||
* | bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code ↵ | Serhiy Storchaka | 2018-01-25 | 1 | -5/+3 | |
| | | | | | (GH-5222) Add two new private APIs: _PyObject_LookupAttr() and _PyObject_LookupAttrId() | |||||
* | bpo-32240: Add the const qualifier to declarations of PyObject* array ↵ | Serhiy Storchaka | 2017-12-15 | 1 | -3/+3 | |
| | | | | arguments. (#4746) | |||||
* | bpo-31586: Use _count_element fast path for real dicts. | Oren Milman | 2017-09-27 | 1 | -1/+3 | |
| | ||||||
* | bpo-27541: Reprs of subclasses of some classes now contain actual type name. ↵ | Serhiy Storchaka | 2017-09-21 | 1 | -4/+7 | |
| | | | | | (#3631) Affected classes are bytearray, array, deque, defaultdict, count and repeat. | |||||
* | Code clean-up. Remove unnecessary pre-increment before the loop starts. (#3312) | Raymond Hettinger | 2017-09-04 | 1 | -17/+10 | |
| | ||||||
* | bpo-31095: fix potential crash during GC (GH-2974) | INADA Naoki | 2017-08-24 | 1 | -0/+4 | |
| | ||||||
* | bpo-29464: Rename METH_FASTCALL to METH_FASTCALL|METH_KEYWORDS and make (#1955) | Serhiy Storchaka | 2017-07-03 | 1 | -15/+3 | |
| | | | | | the bare METH_FASTCALL be used for functions with positional-only parameters. | |||||
* | bpo-29935: Fixed error messages in the index() method of tuple, list and ↵ | Serhiy Storchaka | 2017-03-30 | 1 | -2/+2 | |
| | | | | | deque (#887) when pass indices of wrong type. | |||||
* | bpo-29878: Add global instances of int for 0 and 1. (#852) | Serhiy Storchaka | 2017-03-30 | 1 | -16/+4 | |
| | ||||||
* | bpo-29634: Reduce deque repeat execution when maxlen exist and size is not 1 ↵ | Louie Lu | 2017-02-24 | 1 | -0/+4 | |
| | | | | (#255) (#255) | |||||
* | Optimize deque index, insert and rotate() methods | Victor Stinner | 2017-02-06 | 1 | -11/+29 | |
| | | | | | | | | | | | Issue #29452: Use METH_FASTCALL calling convention for index(), insert() and rotate() methods of collections.deque to avoid the creation a temporary tuple to pass position arguments. Speedup on deque methods: * d.rotate(): 1.10x faster * d.rotate(1): 1.24x faster * d.insert(): 1.18x faster * d.index(): 1.24x faster | |||||
* | Fix typo | Raymond Hettinger | 2017-01-13 | 1 | -1/+1 | |
| | ||||||
* | Issue #28858: Remove _PyObject_CallArg1() macro | Victor Stinner | 2016-12-05 | 1 | -1/+2 | |
| | | | | | | | | | | | Replace _PyObject_CallArg1(func, arg) with PyObject_CallFunctionObjArgs(func, arg, NULL) Using the _PyObject_CallArg1() macro increases the usage of the C stack, which was unexpected and unwanted. PyObject_CallFunctionObjArgs() doesn't have this issue. | |||||
* | Replace PyObject_CallFunction() with fastcall | Victor Stinner | 2016-12-01 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | Replace PyObject_CallFunction(func, "O", arg) and PyObject_CallFunction(func, "O", arg, NULL) with _PyObject_CallArg1(func, arg) Replace PyObject_CallFunction(func, NULL) with _PyObject_CallNoArg(func) _PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate memory on the C stack. | |||||
* | Issue #28123: _PyDict_GetItem_KnownHash() now can raise an exception as | Serhiy Storchaka | 2016-11-06 | 1 | -0/+2 | |
| | | | | PyDict_GetItemWithError(). Patch by Xiang Zhang. | |||||
* | Revert part of 3471a3515827 that caused a performance regression | Raymond Hettinger | 2016-09-12 | 1 | -8/+44 | |
| | ||||||
* | Avoid inefficient way to call functions without argument | Victor Stinner | 2016-09-06 | 1 | -1/+1 | |
| | | | | | | Don't pass "()" format to PyObject_CallXXX() to call a function without argument: pass NULL as the format string instead. It avoids to have to parse a string to produce 0 argument. | |||||
* | - Modules/_collectionsmodule.c: Mark one more internal symbol as static. | doko@ubuntu.com | 2016-06-14 | 1 | -1/+1 | |
| | ||||||
* | - make some internal symbols static | doko@ubuntu.com | 2016-05-17 | 1 | -1/+1 | |
| | ||||||
* | Issue #26482: Allowed pickling recursive dequeues. | Serhiy Storchaka | 2016-03-06 | 1 | -18/+18 | |
| | ||||||
* | More logicial order. Move space saving step to just before it is used. | Raymond Hettinger | 2016-03-04 | 1 | -14/+14 | |
| | ||||||
* | Factor-out common subexpression. | Raymond Hettinger | 2016-03-02 | 1 | -3/+3 | |
| | ||||||
* | Put block length computations in a more logical order. | Raymond Hettinger | 2016-03-02 | 1 | -2/+2 | |
| | ||||||
* | Issue #26200: The SETREF macro adds unnecessary work in some cases. | Raymond Hettinger | 2016-02-09 | 1 | -1/+4 | |
| | ||||||
* | merge | Raymond Hettinger | 2016-02-02 | 1 | -5/+2 | |
| | ||||||
* | merge | Raymond Hettinger | 2016-01-27 | 1 | -0/+7 | |
|\ | ||||||
| * | Issue #26194: Fix undefined behavior for deque.insert() when len(d) == maxlen | Raymond Hettinger | 2016-01-27 | 1 | -0/+7 | |
| | | ||||||
* | | Convert another post-decrement while-loop to pre-decrement for consistency | Raymond Hettinger | 2016-01-24 | 1 | -1/+2 | |
| | | | | | | | | and better generated code (on both GCC and CLang). | |||||
* | | Convert two other post-decrement while-loops to pre-decrements for consistency | Raymond Hettinger | 2016-01-24 | 1 | -2/+4 | |
| | | | | | | | | and for better code generation. | |||||
* | | Miscellaneous refactorings | Raymond Hettinger | 2016-01-24 | 1 | -65/+58 | |
| | | | | | | | | | | | | | | | | * Add comment to the maxlen structure entry about the meaning of maxlen == -1 * Factor-out code common to deque_append(left) and deque_extend(left) * Factor inner-loop in deque_clear() to use only 1 test per loop instead of 2 * Tighten inner-loops for deque_item() and deque_ass_item() so that the compiler can combine the decrement and test into a single step. | |||||
* | | merge 3.5 | Benjamin Peterson | 2016-01-01 | 1 | -2/+0 | |
|\ \ | |/ |