mirror of
https://github.com/licsber/micropython.git
synced 2024-09-20 09:00:23 +08:00
02db91a7a3
From the beginning of this project the RAISE_VARARGS opcode was named and implemented following CPython, where it has an argument (to the opcode) counting how many args the raise takes: raise # 0 args (re-raise previous exception) raise exc # 1 arg raise exc from exc2 # 2 args (chained raise) In the bytecode this operation therefore takes 2 bytes, one for RAISE_VARARGS and one for the number of args. This patch splits this opcode into 3, where each is now a single byte. This reduces bytecode size by 1 byte for each use of raise. Every byte counts! It also has the benefit of reducing code size (on all ports except nanbox). |
||
---|---|---|
.. | ||
cmd_optimise.py | ||
cmd_optimise.py.exp | ||
cmd_parsetree.py | ||
cmd_parsetree.py.exp | ||
cmd_showbc.py | ||
cmd_showbc.py.exp | ||
cmd_verbose.py | ||
cmd_verbose.py.exp | ||
repl_autocomplete.py | ||
repl_autocomplete.py.exp | ||
repl_basic.py | ||
repl_basic.py.exp | ||
repl_cont.py | ||
repl_cont.py.exp | ||
repl_emacs_keys.py | ||
repl_emacs_keys.py.exp |