Author: Alex Gaynor <alex.gay...@gmail.com> Branch: Changeset: r45413:a48d1097f4d6 Date: 2011-07-08 02:05 -0700 http://bitbucket.org/pypy/pypy/changeset/a48d1097f4d6/
Log: Remove refernce to call likely builtin. diff --git a/pypy/doc/interpreter-optimizations.rst b/pypy/doc/interpreter-optimizations.rst --- a/pypy/doc/interpreter-optimizations.rst +++ b/pypy/doc/interpreter-optimizations.rst @@ -263,34 +263,6 @@ You can enable this feature with the :config:`objspace.opcodes.CALL_METHOD` option. -.. _`call likely builtin`: - -CALL_LIKELY_BUILTIN -+++++++++++++++++++ - -A often heard "tip" for speeding up Python programs is to give an often used -builtin a local name, since local lookups are faster than lookups of builtins, -which involve doing two dictionary lookups: one in the globals dictionary and -one in the the builtins dictionary. PyPy approaches this problem at the -implementation level, with the introduction of the new ``CALL_LIKELY_BUILTIN`` -bytecode. This bytecode is produced by the compiler for a call whose target is -the name of a builtin. Since such a syntactic construct is very often actually -invoking the expected builtin at run-time, this information can be used to make -the call to the builtin directly, without going through any dictionary lookup. - -However, it can occur that the name is shadowed by a global name from the -current module. To catch this case, a special dictionary implementation for -multidicts is introduced, which is used for the dictionaries of modules. This -implementation keeps track which builtin name is shadowed by it. The -``CALL_LIKELY_BUILTIN`` bytecode asks the dictionary whether it is shadowing the -builtin that is about to be called and asks the dictionary of ``__builtin__`` -whether the original builtin was changed. These two checks are cheaper than -full lookups. In the common case, neither of these cases is true, so the -builtin can be directly invoked. - -You can enable this feature with the -:config:`objspace.opcodes.CALL_LIKELY_BUILTIN` option. - .. more here? Overall Effects _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit