Implement BUILD_SLICE opcode (2-arg version).

pull/59/head
Paul Sokolovsky 2014-01-03 02:48:56 +02:00
rodzic 1c6de11f77
commit ded0a1efa5
1 zmienionych plików z 12 dodań i 0 usunięć

12
py/vm.c
Wyświetl plik

@ -410,6 +410,18 @@ bool mp_execute_byte_code_2(const byte **ip_in_out, mp_obj_t *fastn, mp_obj_t **
sp++;
break;
case MP_BC_BUILD_SLICE:
DECODE_UINT;
if (unum == 2) {
obj2 = POP();
obj1 = TOP();
SET_TOP(mp_obj_new_slice(obj1, obj2, NULL));
} else {
printf("3-argument slice is not supported\n");
assert(0);
}
break;
case MP_BC_UNPACK_SEQUENCE:
DECODE_UINT;
rt_unpack_sequence(sp[0], unum, sp - unum + 1);