Jeremy Hylton writes:
> I don't understand what you mean, but I'll try to reply anyway :-).
Often a good tactic. ;-)
> I assume LOAD_NONE will eliminate the need for LOAD_CONST 0 (None).
Yes.
> It's probably a wee bit faster and it makes the bytecode smaller,
> because you don't need None in co_consts and you don't need an
> argument to the bytecode.
Yes.
> Based on my cycle counter measurements before the conference, I
> suspect the performance impact is, well, negligible.
Regarding changing LOAD_CONST 0 to LOAD_NONE, yes. What's more
interesting are the changes of LOAD_GLOBAL 'None' to one of LOAD_CONST
0 or LOAD_NONE. That could be changed to use LOAD_CONST 0 *now*,
without adding a new bytecode, and we could get a better idea of how
much performance it actually buys us in practice, since we get rid of
two dict lookups (globals & builtins).
That doesn't address the deprecation cycle, but it would be nice to
see what the change would buy us.
-Fred
--
Fred L. Drake, Jr. <fdrake at acm.org>
PythonLabs at Zope Corporation