From a75b02ea9be41c27b87fd80ad37e7c26b4583fad Mon Sep 17 00:00:00 2001 From: Damien George Date: Wed, 27 Aug 2014 09:20:30 +0100 Subject: py: Improve efficiency of MP_OBJ_IS_STR_OR_BYTES. Saves ROM (16 on stmhal, 240 on 64-bit unix) and should be quicker since there is 1 less branch. --- py/objstr.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'py/objstr.c') diff --git a/py/objstr.c b/py/objstr.c index f38532963..366ba8816 100644 --- a/py/objstr.c +++ b/py/objstr.c @@ -247,6 +247,9 @@ STATIC const byte *find_subbytes(const byte *haystack, mp_uint_t hlen, const byt return NULL; } +// Note: this function is used to check if an object is a str or bytes, which +// works because both those types use it as their binary_op method. Revisit +// MP_OBJ_IS_STR_OR_BYTES if this fact changes. mp_obj_t mp_obj_str_binary_op(int op, mp_obj_t lhs_in, mp_obj_t rhs_in) { GET_STR_DATA_LEN(lhs_in, lhs_data, lhs_len); mp_obj_type_t *lhs_type = mp_obj_get_type(lhs_in); -- cgit v1.2.3