summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--py/objtype.c4
-rw-r--r--py/showbc.c4
2 files changed, 5 insertions, 3 deletions
diff --git a/py/objtype.c b/py/objtype.c
index 55a321d98c..2970e92767 100644
--- a/py/objtype.c
+++ b/py/objtype.c
@@ -362,7 +362,7 @@ STATIC mp_obj_t instance_unary_op(mp_uint_t op, mp_obj_t self_in) {
}
}
-STATIC const qstr binary_op_method_name[] = {
+const qstr mp_binary_op_method_name[] = {
/*
MP_BINARY_OP_OR,
MP_BINARY_OP_XOR,
@@ -435,7 +435,7 @@ STATIC mp_obj_t instance_binary_op(mp_uint_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
// Note: For ducktyping, CPython does not look in the instance members or use
// __getattr__ or __getattribute__. It only looks in the class dictionary.
mp_obj_instance_t *lhs = lhs_in;
- qstr op_name = binary_op_method_name[op];
+ qstr op_name = mp_binary_op_method_name[op];
/* Still try to lookup native slot
if (op_name == 0) {
return MP_OBJ_NULL;
diff --git a/py/showbc.c b/py/showbc.c
index e25b050c68..4a765499cf 100644
--- a/py/showbc.c
+++ b/py/showbc.c
@@ -34,6 +34,7 @@
#include "runtime.h"
#include "bc0.h"
#include "bc.h"
+extern const qstr mp_binary_op_method_name[];
#if MICROPY_DEBUG_PRINTERS
@@ -509,7 +510,8 @@ const byte *mp_bytecode_print_str(const byte *ip) {
} else if (ip[-1] < MP_BC_UNARY_OP_MULTI + 5) {
printf("UNARY_OP " UINT_FMT, (mp_uint_t)ip[-1] - MP_BC_UNARY_OP_MULTI);
} else if (ip[-1] < MP_BC_BINARY_OP_MULTI + 35) {
- printf("BINARY_OP " UINT_FMT, (mp_uint_t)ip[-1] - MP_BC_BINARY_OP_MULTI);
+ mp_uint_t op = ip[-1] - MP_BC_BINARY_OP_MULTI;
+ printf("BINARY_OP " UINT_FMT " %s", op, qstr_str(mp_binary_op_method_name[op]));
} else {
printf("code %p, byte code 0x%02x not implemented\n", ip, ip[-1]);
assert(0);