summaryrefslogtreecommitdiffstatshomepage
path: root/py
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-03-30 17:39:25 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-03-30 17:40:45 +0300
commit48bdb21332079307be080cc620a1084c778d083b (patch)
treee3a95020b6e14cb143429656bd1332a06c229fd5 /py
parentdf6567e6345c763182fa237a4497ab94ee6ffc20 (diff)
downloadmicropython-48bdb21332079307be080cc620a1084c778d083b.tar.gz
micropython-48bdb21332079307be080cc620a1084c778d083b.zip
showbc: Dump all CALL_FUNCTION_* and CALL_METHOD_* opcodes.
Diffstat (limited to 'py')
-rw-r--r--py/showbc.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/py/showbc.c b/py/showbc.c
index 12bd901185..10b3e7490d 100644
--- a/py/showbc.c
+++ b/py/showbc.c
@@ -399,11 +399,41 @@ void mp_byte_code_print(const byte *ip, int len) {
printf("CALL_FUNCTION n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
break;
+ case MP_BC_CALL_FUNCTION_VAR:
+ DECODE_UINT;
+ printf("CALL_FUNCTION_VAR n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
+ case MP_BC_CALL_FUNCTION_KW:
+ DECODE_UINT;
+ printf("CALL_FUNCTION_KW n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
+ case MP_BC_CALL_FUNCTION_VAR_KW:
+ DECODE_UINT;
+ printf("CALL_FUNCTION_VAR_KW n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
case MP_BC_CALL_METHOD:
DECODE_UINT;
printf("CALL_METHOD n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
break;
+ case MP_BC_CALL_METHOD_VAR:
+ DECODE_UINT;
+ printf("CALL_METHOD_VAR n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
+ case MP_BC_CALL_METHOD_KW:
+ DECODE_UINT;
+ printf("CALL_METHOD_KW n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
+ case MP_BC_CALL_METHOD_VAR_KW:
+ DECODE_UINT;
+ printf("CALL_METHOD_VAR_KW n=" UINT_FMT " nkw=" UINT_FMT, unum & 0xff, (unum >> 8) & 0xff);
+ break;
+
case MP_BC_RETURN_VALUE:
printf("RETURN_VALUE");
break;