• Raymond Hettinger's avatar
    Speed-up dictionary constructor by about 10%. · effde12f
    Raymond Hettinger yazdı
    New opcode, STORE_MAP saves the compiler from awkward stack manipulations
    and specializes for dicts using PyDict_SetItem instead of PyObject_SetItem.
    
    Old disassembly:
                  0 BUILD_MAP                0
                  3 DUP_TOP
                  4 LOAD_CONST               1 (1)
                  7 ROT_TWO
                  8 LOAD_CONST               2 ('x')
                 11 STORE_SUBSCR
                 12 DUP_TOP
                 13 LOAD_CONST               3 (2)
                 16 ROT_TWO
                 17 LOAD_CONST               4 ('y')
                 20 STORE_SUBSCR
    
    New disassembly:
                  0 BUILD_MAP                0
                  3 LOAD_CONST               1 (1)
                  6 LOAD_CONST               2 ('x')
                  9 STORE_MAP
                 10 LOAD_CONST               3 (2)
                 13 LOAD_CONST               4 ('y')
                 16 STORE_MAP
    effde12f
Adı
Son kayıt (commit)
Son güncelleme
..
Python-ast.h Loading commit data...
Python.h Loading commit data...
abstract.h Loading commit data...
asdl.h Loading commit data...
ast.h Loading commit data...
bitset.h Loading commit data...
boolobject.h Loading commit data...
bufferobject.h Loading commit data...
cStringIO.h Loading commit data...
cellobject.h Loading commit data...
ceval.h Loading commit data...
classobject.h Loading commit data...
cobject.h Loading commit data...
code.h Loading commit data...
codecs.h Loading commit data...
compile.h Loading commit data...
complexobject.h Loading commit data...
datetime.h Loading commit data...
descrobject.h Loading commit data...
dictobject.h Loading commit data...
enumobject.h Loading commit data...
errcode.h Loading commit data...
eval.h Loading commit data...
fileobject.h Loading commit data...
floatobject.h Loading commit data...
frameobject.h Loading commit data...
funcobject.h Loading commit data...
genobject.h Loading commit data...
graminit.h Loading commit data...
grammar.h Loading commit data...
import.h Loading commit data...
intobject.h Loading commit data...
intrcheck.h Loading commit data...
iterobject.h Loading commit data...
listobject.h Loading commit data...
longintrepr.h Loading commit data...
longobject.h Loading commit data...
marshal.h Loading commit data...
metagrammar.h Loading commit data...
methodobject.h Loading commit data...
modsupport.h Loading commit data...
moduleobject.h Loading commit data...
node.h Loading commit data...
object.h Loading commit data...
objimpl.h Loading commit data...
opcode.h Loading commit data...
osdefs.h Loading commit data...
parsetok.h Loading commit data...
patchlevel.h Loading commit data...
pgen.h Loading commit data...
pgenheaders.h Loading commit data...
py_curses.h Loading commit data...
pyarena.h Loading commit data...
pydebug.h Loading commit data...
pyerrors.h Loading commit data...
pyexpat.h Loading commit data...
pyfpe.h Loading commit data...
pygetopt.h Loading commit data...
pymactoolbox.h Loading commit data...
pymem.h Loading commit data...
pyport.h Loading commit data...
pystate.h Loading commit data...
pystrtod.h Loading commit data...
pythonrun.h Loading commit data...
pythread.h Loading commit data...
rangeobject.h Loading commit data...
setobject.h Loading commit data...
sliceobject.h Loading commit data...
stringobject.h Loading commit data...
structmember.h Loading commit data...
structseq.h Loading commit data...
symtable.h Loading commit data...
sysmodule.h Loading commit data...
timefuncs.h Loading commit data...
token.h Loading commit data...
traceback.h Loading commit data...
tupleobject.h Loading commit data...
ucnhash.h Loading commit data...
unicodeobject.h Loading commit data...
weakrefobject.h Loading commit data...