summaryrefslogtreecommitdiffstatshomepage
path: root/py/vm.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2014-04-08 17:51:47 +0100
committerDamien George <damien.p.george@gmail.com>2014-04-08 17:51:47 +0100
commit495d781a36381927bcf0c1d03a055a2e3a3284bf (patch)
treea0531fb4725c016c235a9d9b7d07c576c518508a /py/vm.c
parente753d916c01a8297011d7bb9a16e1947c33fe08d (diff)
downloadmicropython-495d781a36381927bcf0c1d03a055a2e3a3284bf.tar.gz
micropython-495d781a36381927bcf0c1d03a055a2e3a3284bf.zip
py: implement UNPACK_EX byte code (for: a, *b, c = d)
Diffstat (limited to 'py/vm.c')
-rw-r--r--py/vm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/py/vm.c b/py/vm.c
index 2e64cd9573..869a9381ad 100644
--- a/py/vm.c
+++ b/py/vm.c
@@ -653,6 +653,12 @@ unwind_jump:
sp += unum - 1;
break;
+ case MP_BC_UNPACK_EX:
+ DECODE_UINT;
+ mp_unpack_ex(sp[0], unum, sp);
+ sp += (unum & 0xff) + ((unum >> 8) & 0xff);
+ break;
+
case MP_BC_MAKE_FUNCTION:
DECODE_UINT;
PUSH(mp_make_function_from_id(unum, MP_OBJ_NULL, MP_OBJ_NULL));