summaryrefslogtreecommitdiffstats
path: root/Objects
Commit message (Collapse)AuthorAgeFilesLines
* Merge 3.6.Stefan Krah2016-12-301-1/+1
|\
| * Merge 3.5.Stefan Krah2016-12-301-1/+1
| |\
| | * Issue #29111: Fix memoryview signature.Stefan Krah2016-12-301-1/+1
| | |
| | * Issue #29073: bytearray formatting no longer truncates on first null byte.Serhiy Storchaka2016-12-281-1/+3
| | |
* | | Issue #28427: old keys should not remove new values fromAntoine Pitrou2016-12-271-16/+74
|\ \ \ | |/ / | | | | | | WeakValueDictionary when collecting from another thread.
| * | Issue #28427: old keys should not remove new values fromAntoine Pitrou2016-12-271-17/+74
| |\ \ | | |/ | | | | | | WeakValueDictionary when collecting from another thread.
| | * Issue #28427: old keys should not remove new values fromAntoine Pitrou2016-12-271-25/+56
| | | | | | | | | | | | WeakValueDictionary when collecting from another thread.
* | | Issue #29049: Call _PyObject_GC_TRACK() lazily when calling Python function.INADA Naoki2016-12-241-4/+16
| | | | | | | | | | | | Calling function is up to 5% faster.
* | | Issue #29044: Merge 3.6.Xiang Zhang2016-12-221-3/+4
|\ \ \ | |/ /
| * | Issue #29044: Merge 3.5.Xiang Zhang2016-12-221-3/+4
| |\ \ | | |/
| | * Issue #29044: Fix a use-after-free in string '%c' formatter.Xiang Zhang2016-12-221-3/+4
| | |
| | * Issue #28147: Fix a memory leak in split-table dictionariesINADA Naoki2016-12-201-6/+15
| | | | | | | | | | | | setattr() must not convert combined table into split table.
* | | Issue #28822: Adjust indices handling of PyUnicode_FindChar().Xiang Zhang2016-12-201-8/+4
| | |
* | | Issue #28927: bytes.fromhex() and bytearray.fromhex() now ignore all ASCIISerhiy Storchaka2016-12-191-2/+2
| | | | | | | | | | | | whitespace, not only spaces. Patch by Robert Xiao.
* | | Issue #29000: Fixed bytes formatting of octals with zero padding in alternateSerhiy Storchaka2016-12-171-3/+2
|\ \ \ | |/ / | | | | | | form.
| * | Issue #29000: Fixed bytes formatting of octals with zero padding in alternateSerhiy Storchaka2016-12-171-3/+2
| |\ \ | | |/ | | | | | | form.
| | * Issue #29000: Fixed bytes formatting of octals with zero padding in alternateSerhiy Storchaka2016-12-171-3/+2
| | | | | | | | | | | | form.
* | | Issue #18896: Python function can now have more than 255 parameters.Serhiy Storchaka2016-12-161-7/+13
| | | | | | | | | | | | collections.namedtuple() now supports tuples with more than 255 elements.
* | | Issue #28959: Added private macro PyDict_GET_SIZE for retrieving the size of ↵Serhiy Storchaka2016-12-169-22/+21
| | | | | | | | | | | | dict.
* | | Merge 3.6.Xavier de Gaye2016-12-151-3/+3
|\ \ \ | |/ /
| * | Issue #26919: On Android, operating system data is now always encoded/decodedXavier de Gaye2016-12-151-3/+3
| | | | | | | | | | | | | | | to/from UTF-8, instead of the locale encoding to avoid inconsistencies with os.fsencode() and os.fsdecode() which are already using UTF-8.
* | | Merge 3.6Victor Stinner2016-12-151-5/+22
|\ \ \ | |/ /
| * | Fix a memory leak in split-table dictionariesVictor Stinner2016-12-151-5/+22
| | | | | | | | | | | | | | | | | | | | | Issue #28147: Fix a memory leak in split-table dictionaries: setattr() must not convert combined table into split table. Patch written by INADA Naoki.
* | | Use _PyDict_NewPresized() in _PyStack_AsDict()Victor Stinner2016-12-151-1/+1
| | | | | | | | | | | | Issue #27810.
* | | Add _PY_FASTCALL_SMALL_STACK constantVictor Stinner2016-12-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #28870: Add a new _PY_FASTCALL_SMALL_STACK constant, size of "small stacks" allocated on the C stack to pass positional arguments to _PyObject_FastCall(). _PyObject_Call_Prepend() now uses a small stack of 5 arguments (40 bytes) instead of 8 (64 bytes), since it is modified to use _PY_FASTCALL_SMALL_STACK.
* | | Fix _PyObject_CallFunctionVa(), use the small stackVictor Stinner2016-12-151-2/+1
| | | | | | | | | | | | | | | Issue #28915. Oops, I disabled the small stack to test both code paths. It's now fixed.
* | | Merge from 3.6.Serhiy Storchaka2016-12-141-28/+1
|\ \ \ | |/ /
| * | Merge from 3.6.Serhiy Storchaka2016-12-141-28/+1
| |\ \ | | |/
| | * Revert changeset 1f31bf3f76f5 (issue5322) except tests.Serhiy Storchaka2016-12-141-28/+1
| | |
* | | Issue #26110: Add LOAD_METHOD/CALL_METHOD opcodes.Yury Selivanov2016-12-141-1/+89
| | | | | | | | | | | | | | | | | | | | | Special thanks to INADA Naoki for pushing the patch through the last mile, Serhiy Storchaka for reviewing the code, and to Victor Stinner for suggesting the idea (originally implemented in the PyPy project).
* | | Issue #28820: Merge typo fixes from 3.6Martin Panter2016-12-101-1/+1
|\ \ \ | |/ /
| * | Fix typos in comment and documentationMartin Panter2016-12-101-1/+1
| | |
| * | Issue #28731: Optimize _PyDict_NewPresized() to create correct size dict.INADA Naoki2016-12-071-5/+19
| | | | | | | | | | | | Improve speed of dict literal with constant keys up to 30%.
* | | Backed out changeset 99c34e47348bVictor Stinner2016-12-091-1/+1
| | | | | | | | | | | | The change broke test_gdb.
* | | Inline PyEval_EvalFrameEx() in callersVictor Stinner2016-12-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The PEP 523 modified PyEval_EvalFrameEx(): it's now an indirection to interp->eval_frame(). Inline the call in performance critical code. Leave PyEval_EvalFrame() unchanged, this function is only kept for backward compatibility.
* | | Remove useless variable initializationVictor Stinner2016-12-091-9/+6
| | | | | | | | | | | | Don't initialize variables which are not used before they are assigned.
* | | Use PyObject_CallFunctionObjArgs()Victor Stinner2016-12-092-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #28915: Replace PyObject_CallFunction() with PyObject_CallFunctionObjArgs() when the format string was only made of "O" formats, PyObject* arguments. PyObject_CallFunctionObjArgs() avoids the creation of a temporary tuple and doesn't have to parse a format string.
* | | Use _PyObject_FastCallVa() in type slotsVictor Stinner2016-12-081-81/+50
| | | | | | | | | | | | | | | Issue #28915: Replace Py_VaBuildValue()+PyObject_Call() with _PyObject_FastCallVa() to avoid the creation of temporary tuple.
* | | Add _PyObject_VaCallFunctionObjArgs() private functionVictor Stinner2016-12-081-5/+5
| | | | | | | | | | | | | | | Issue #28915: Similar to _PyObject_CallFunctionObjArgs() but use va_list to pass arguments.
* | | Use _PyObject_CallMethodIdObjArgs()Victor Stinner2016-12-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #28915: Replace _PyObject_CallMethodId() with _PyObject_CallMethodIdObjArgs() when the format string only use the format 'O' for objects, like "(O)". _PyObject_CallMethodIdObjArgs() avoids the code to parse a format string and avoids the creation of a temporary tuple.
* | | _PyObject_CallFunctionVa() uses fast callVictor Stinner2016-12-081-9/+25
| | | | | | | | | | | | | | | | | | | | | | | | Issue #28915: Use _Py_VaBuildStack() to build a C array of PyObject* and then use _PyObject_FastCall(). The function has a special case if the stack only contains one parameter and the parameter is a tuple: "unpack" the tuple of arguments in this case.
* | | Add _PyObject_CallFunctionVa() helperVictor Stinner2016-12-081-54/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #28915: Add _PyObject_CallFunctionVa() helper to factorize code of functions: * PyObject_CallFunction() * _PyObject_CallFunction_SizeT() * callmethod()
* | | Add _PyObject_FastCallVa() helperVictor Stinner2016-12-081-71/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #28915: Add _PyObject_FastCallVa() helper to factorize code of functions: * PyObject_CallFunctionObjArgs() * PyObject_CallMethodObjArgs() * _PyObject_CallMethodIdObjArgs() Inline objargs_mkstack() into _PyObject_FastCallVa(), remove objargs_mkstack().
* | | Issue #28818: Simplify lookdict functionsINADA Naoki2016-12-073-125/+97
| | |
* | | Issue #5322: Fixed setting __new__ to a PyCFunction inside Python code.Serhiy Storchaka2016-12-071-1/+28
|\ \ \ | |/ / | | | | | | Original patch by Andreas Stührk.
| * | Issue #5322: Fixed setting __new__ to a PyCFunction inside Python code.Serhiy Storchaka2016-12-071-1/+28
| |\ \ | | |/ | | | | | | Original patch by Andreas Stührk.
| | * Issue #5322: Fixed setting __new__ to a PyCFunction inside Python code.Serhiy Storchaka2016-12-021-1/+28
| | | | | | | | | | | | Original patch by Andreas Stührk.
* | | _PyObject_FastCallKeywords() now calls directly tp_callVictor Stinner2016-12-061-15/+45
| | | | | | | | | | | | | | | _PyObject_FastCallKeywords() doesn't call _PyObject_FastCallDict() anymore: call directly tp_call.
* | | Fix typo in a comment of abstract.cVictor Stinner2016-12-061-1/+1
| | |
* | | Use _PyObject_CallNoArg()Victor Stinner2016-12-066-8/+8
| | | | | | | | | | | | | | | | | | | | | Replace: PyObject_CallFunctionObjArgs(callable, NULL) with: _PyObject_CallNoArg(callable)