summaryrefslogtreecommitdiff
path: root/py
diff options
context:
space:
mode:
authormicroDev <70126934+microDev1@users.noreply.github.com>2021-03-15 19:27:36 +0530
committermicroDev <70126934+microDev1@users.noreply.github.com>2021-03-15 19:27:36 +0530
commita52eb88031620a81521b937f2a0651dbac2bb350 (patch)
tree017cbf8f686b252241182ef61ce48e8457aa1577 /py
parent090b6ba42fcdfbb16844f77892087f91aa6ea201 (diff)
run code formatting script
Diffstat (limited to 'py')
-rw-r--r--py/argcheck.c54
-rw-r--r--py/asmarm.c24
-rw-r--r--py/asmbase.c6
-rw-r--r--py/asmbase.h4
-rw-r--r--py/asmthumb.c4
-rw-r--r--py/asmthumb.h82
-rw-r--r--py/asmx64.c36
-rw-r--r--py/asmx64.h42
-rw-r--r--py/asmx86.c45
-rw-r--r--py/asmx86.h34
-rw-r--r--py/asmxtensa.c2
-rw-r--r--py/bc.c30
-rw-r--r--py/bc.h6
-rw-r--r--py/binary.c234
-rw-r--r--py/builtinevex.c12
-rw-r--r--py/builtinhelp.c32
-rw-r--r--py/builtinimport.c102
-rw-r--r--py/circuitpy_mpconfig.h22
-rw-r--r--py/compile.c439
-rw-r--r--py/emit.h2
-rw-r--r--py/emitbc.c50
-rw-r--r--py/emitglue.c20
-rw-r--r--py/emitinlinethumb.c70
-rw-r--r--py/emitinlinextensa.c6
-rw-r--r--py/emitnative.c112
-rw-r--r--py/enum.c6
-rw-r--r--py/enum.h20
-rw-r--r--py/formatfloat.c17
-rw-r--r--py/frozenmod.c2
-rw-r--r--py/frozenmod.h4
-rw-r--r--[-rwxr-xr-x]py/gc.c165
-rw-r--r--py/gc.h6
-rw-r--r--[-rwxr-xr-x]py/gc_long_lived.c26
-rw-r--r--py/genlast.py28
-rw-r--r--py/lexer.c108
-rw-r--r--py/lexer.h14
-rw-r--r--py/makemoduledefs.py48
-rw-r--r--py/makeqstrdata.py213
-rw-r--r--py/makeqstrdefs.py89
-rw-r--r--py/makeversionhdr.py39
-rw-r--r--py/malloc.c30
-rw-r--r--py/map.c4
-rw-r--r--py/misc.h67
-rw-r--r--py/modarray.c2
-rw-r--r--py/modbuiltins.c50
-rw-r--r--py/modcmath.c36
-rw-r--r--py/modcollections.c2
-rw-r--r--py/modgc.c8
-rw-r--r--py/modio.c12
-rw-r--r--py/modmath.c32
-rw-r--r--py/modmicropython.c30
-rw-r--r--py/modstruct.c10
-rw-r--r--py/modsys.c8
-rw-r--r--py/modthread.c10
-rw-r--r--py/moduerrno.c70
-rw-r--r--[-rwxr-xr-x]py/mpconfig.h26
-rw-r--r--py/mperrno.h2
-rw-r--r--py/mpprint.c59
-rw-r--r--py/mpprint.h4
-rw-r--r--py/mpstate.h4
-rw-r--r--py/mpthread.h2
-rw-r--r--py/mpz.c122
-rw-r--r--py/mpz.h23
-rw-r--r--py/nativeglue.c26
-rw-r--r--py/nlr.c2
-rw-r--r--py/nlr.h8
-rw-r--r--py/nlrthumb.c164
-rw-r--r--py/nlrx64.c104
-rw-r--r--py/nlrx86.c58
-rw-r--r--py/nlrxtensa.c58
-rw-r--r--py/obj.c118
-rw-r--r--py/obj.h150
-rw-r--r--py/objarray.c76
-rw-r--r--py/objattrtuple.c4
-rw-r--r--py/objboundmeth.c8
-rw-r--r--py/objcell.c4
-rw-r--r--py/objclosure.c4
-rw-r--r--py/objcomplex.c32
-rw-r--r--py/objdeque.c2
-rw-r--r--py/objdict.c21
-rw-r--r--py/objenumerate.c8
-rw-r--r--py/objexcept.c112
-rw-r--r--py/objexcept.h16
-rw-r--r--py/objfloat.c78
-rw-r--r--py/objfun.c26
-rw-r--r--py/objgenerator.c14
-rw-r--r--py/objgetitemiter.c4
-rw-r--r--py/objint.c58
-rw-r--r--py/objint.h10
-rw-r--r--py/objint_longlong.c26
-rw-r--r--py/objint_mpz.c90
-rw-r--r--py/objlist.c68
-rw-r--r--py/objmodule.c158
-rw-r--r--py/objnamedtuple.c36
-rw-r--r--py/objobject.c4
-rw-r--r--py/objproperty.c8
-rw-r--r--py/objrange.c21
-rw-r--r--py/objset.c31
-rw-r--r--py/objslice.c10
-rw-r--r--py/objstr.c275
-rw-r--r--py/objstr.h16
-rw-r--r--py/objstringio.c8
-rw-r--r--py/objstrunicode.c23
-rw-r--r--py/objtuple.c17
-rw-r--r--py/objtuple.h2
-rw-r--r--py/objtype.c83
-rw-r--r--py/parse.c122
-rw-r--r--py/parse.h2
-rw-r--r--py/parsenum.c58
-rw-r--r--py/parsenumbase.c4
-rw-r--r--py/persistentcode.c36
-rw-r--r--py/proto.c6
-rw-r--r--py/proto.h4
-rw-r--r--py/pystack.c2
-rw-r--r--py/pystack.h14
-rw-r--r--[-rwxr-xr-x]py/qstr.c18
-rw-r--r--py/qstr.h6
-rw-r--r--py/qstrdefs.h2
-rw-r--r--py/reader.c10
-rw-r--r--py/reload.c6
-rw-r--r--py/reload.h4
-rw-r--r--py/repl.c35
-rw-r--r--py/ringbuf.c14
-rw-r--r--py/ringbuf.h4
-rw-r--r--py/runtime.c190
-rw-r--r--py/runtime.h20
-rw-r--r--py/runtime0.h16
-rw-r--r--py/scope.c2
-rw-r--r--py/sequence.c12
-rw-r--r--py/showbc.c42
-rw-r--r--py/stackctrl.c16
-rw-r--r--py/stackctrl.h2
-rw-r--r--py/stream.c14
-rw-r--r--py/stream.h8
-rw-r--r--py/unicode.c4
-rw-r--r--py/vm.c554
-rw-r--r--py/vmentrytable.h156
-rw-r--r--py/vstr.c18
138 files changed, 3455 insertions, 2855 deletions
diff --git a/py/argcheck.c b/py/argcheck.c
index af5c81bf3..7fba9dc27 100644
--- a/py/argcheck.c
+++ b/py/argcheck.c
@@ -48,38 +48,38 @@ void mp_arg_check_num_kw_array(size_t n_args, size_t n_kw, size_t n_args_min, si
if (n_kw > 0 && !takes_kw) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError(translate("function does not take keyword arguments"));
+ mp_raise_TypeError(translate("function does not take keyword arguments"));
#endif
}
if (n_args_min == n_args_max) {
if (n_args != n_args_min) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError_varg(
- translate("function takes %d positional arguments but %d were given"),
- n_args_min, n_args);
+ mp_raise_TypeError_varg(
+ translate("function takes %d positional arguments but %d were given"),
+ n_args_min, n_args);
#endif
}
} else {
if (n_args < n_args_min) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError_varg(
- translate("function missing %d required positional arguments"),
- n_args_min - n_args);
+ mp_raise_TypeError_varg(
+ translate("function missing %d required positional arguments"),
+ n_args_min - n_args);
#endif
} else if (n_args > n_args_max) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError_varg(
- translate("function expected at most %d arguments, got %d"),
- n_args_max, n_args);
+ mp_raise_TypeError_varg(
+ translate("function expected at most %d arguments, got %d"),
+ n_args_max, n_args);
#endif
}
}
@@ -99,12 +99,12 @@ void mp_arg_parse_all(size_t n_pos, const mp_obj_t *pos, mp_map_t *kws, size_t n
mp_map_elem_t *kw = mp_map_lookup(kws, MP_OBJ_NEW_QSTR(allowed[i].qst), MP_MAP_LOOKUP);
if (kw == NULL) {
if (allowed[i].flags & MP_ARG_REQUIRED) {
- #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
- #else
- mp_raise_TypeError_varg(
- translate("'%q' argument required"), allowed[i].qst);
- #endif
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
+ mp_arg_error_terse_mismatch();
+ #else
+ mp_raise_TypeError_varg(
+ translate("'%q' argument required"), allowed[i].qst);
+ #endif
}
out_vals[i] = allowed[i].defval;
continue;
@@ -123,20 +123,20 @@ void mp_arg_parse_all(size_t n_pos, const mp_obj_t *pos, mp_map_t *kws, size_t n
}
}
if (pos_found < n_pos) {
- extra_positional:
+ extra_positional:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- // TODO better error message
- mp_raise_TypeError(translate("extra positional arguments given"));
+ // TODO better error message
+ mp_raise_TypeError(translate("extra positional arguments given"));
#endif
}
if (kws_found < kws->used) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- // TODO better error message
- mp_raise_TypeError(translate("extra keyword arguments given"));
+ // TODO better error message
+ mp_raise_TypeError(translate("extra keyword arguments given"));
#endif
}
}
diff --git a/py/asmarm.c b/py/asmarm.c
index 11e498b2c..644548cfd 100644
--- a/py/asmarm.c
+++ b/py/asmarm.c
@@ -40,16 +40,16 @@
void asm_arm_end_pass(asm_arm_t *as) {
if (as->base.pass == MP_ASM_PASS_EMIT) {
-#ifdef __arm__
+ #ifdef __arm__
// flush I- and D-cache
- asm volatile(
- "0:"
- "mrc p15, 0, r15, c7, c10, 3\n"
- "bne 0b\n"
- "mov r0, #0\n"
- "mcr p15, 0, r0, c7, c7, 0\n"
- : : : "r0", "cc");
-#endif
+ asm volatile (
+ "0:"
+ "mrc p15, 0, r15, c7, c10, 3\n"
+ "bne 0b\n"
+ "mov r0, #0\n"
+ "mcr p15, 0, r0, c7, c7, 0\n"
+ : : : "r0", "cc");
+ #endif
}
}
@@ -57,7 +57,7 @@ void asm_arm_end_pass(asm_arm_t *as) {
STATIC void emit(asm_arm_t *as, uint op) {
uint8_t *c = mp_asm_base_get_cur_to_write_bytes(&as->base, 4);
if (c != NULL) {
- *(uint32_t*)c = op;
+ *(uint32_t *)c = op;
}
}
@@ -205,7 +205,7 @@ void asm_arm_mov_reg_i32(asm_arm_t *as, uint rd, int imm) {
// mvn is "move not", not "move negative"
emit_al(as, asm_arm_op_mvn_imm(rd, ~imm));
} else {
- //Insert immediate into code and jump over it
+ // Insert immediate into code and jump over it
emit_al(as, 0x59f0000 | (rd << 12)); // ldr rd, [pc]
emit_al(as, 0xa000000); // b pc
emit(as, imm);
@@ -359,7 +359,7 @@ void asm_arm_bl_ind(asm_arm_t *as, void *fun_ptr, uint fun_id, uint reg_temp) {
// Set lr after fun_ptr
emit_al(as, asm_arm_op_add_imm(ASM_ARM_REG_LR, ASM_ARM_REG_PC, 4)); // add lr, pc, #4
emit_al(as, asm_arm_op_mov_reg(ASM_ARM_REG_PC, reg_temp)); // mov pc, reg_temp
- emit(as, (uint) fun_ptr);
+ emit(as, (uint)fun_ptr);
}
#endif // MICROPY_EMIT_ARM
diff --git a/py/asmbase.c b/py/asmbase.c
index 4d080f095..5cf8a78c2 100644
--- a/py/asmbase.c
+++ b/py/asmbase.c
@@ -51,7 +51,7 @@ void mp_asm_base_start_pass(mp_asm_base_t *as, int pass) {
memset(as->label_offsets, -1, as->max_num_labels * sizeof(size_t));
} else {
// allocating executable RAM is platform specific
- MP_PLAT_ALLOC_EXEC(as->code_offset, (void**)&as->code_base, &as->code_size);
+ MP_PLAT_ALLOC_EXEC(as->code_offset, (void **)&as->code_base, &as->code_size);
assert(as->code_base != NULL);
}
as->pass = pass;
@@ -84,12 +84,12 @@ void mp_asm_base_label_assign(mp_asm_base_t *as, size_t label) {
}
// align must be a multiple of 2
-void mp_asm_base_align(mp_asm_base_t* as, unsigned int align) {
+void mp_asm_base_align(mp_asm_base_t *as, unsigned int align) {
as->code_offset = (as->code_offset + align - 1) & (~(align - 1));
}
// this function assumes a little endian machine
-void mp_asm_base_data(mp_asm_base_t* as, unsigned int bytesize, uintptr_t val) {
+void mp_asm_base_data(mp_asm_base_t *as, unsigned int bytesize, uintptr_t val) {
uint8_t *c = mp_asm_base_get_cur_to_write_bytes(as, bytesize);
if (c != NULL) {
for (unsigned int i = 0; i < bytesize; i++) {
diff --git a/py/asmbase.h b/py/asmbase.h
index 3b2f59d15..9ee7fe061 100644
--- a/py/asmbase.h
+++ b/py/asmbase.h
@@ -47,8 +47,8 @@ void mp_asm_base_deinit(mp_asm_base_t *as, bool free_code);
void mp_asm_base_start_pass(mp_asm_base_t *as, int pass);
uint8_t *mp_asm_base_get_cur_to_write_bytes(mp_asm_base_t *as, size_t num_bytes_to_write);
void mp_asm_base_label_assign(mp_asm_base_t *as, size_t label);
-void mp_asm_base_align(mp_asm_base_t* as, unsigned int align);
-void mp_asm_base_data(mp_asm_base_t* as, unsigned int bytesize, uintptr_t val);
+void mp_asm_base_align(mp_asm_base_t *as, unsigned int align);
+void mp_asm_base_data(mp_asm_base_t *as, unsigned int bytesize, uintptr_t val);
static inline size_t mp_asm_base_get_code_pos(mp_asm_base_t *as) {
return as->code_offset;
diff --git a/py/asmthumb.c b/py/asmthumb.c
index 3cf47c5b1..33ec42004 100644
--- a/py/asmthumb.c
+++ b/py/asmthumb.c
@@ -328,7 +328,7 @@ void asm_thumb_b_label(asm_thumb_t *as, uint label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
asm_thumb_op32(as, OP_BW_HI(rel), OP_BW_LO(rel));
}
}
@@ -347,7 +347,7 @@ void asm_thumb_bcc_label(asm_thumb_t *as, int cond, uint label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
asm_thumb_op32(as, OP_BCC_W_HI(cond, rel), OP_BCC_W_LO(rel));
}
}
diff --git a/py/asmthumb.h b/py/asmthumb.h
index 32219eb55..6acf305a2 100644
--- a/py/asmthumb.h
+++ b/py/asmthumb.h
@@ -94,8 +94,9 @@ void asm_thumb_exit(asm_thumb_t *as);
void asm_thumb_op16(asm_thumb_t *as, uint op);
void asm_thumb_op32(asm_thumb_t *as, uint op1, uint op2);
-static inline void asm_thumb_it_cc(asm_thumb_t *as, uint cc, uint mask)
- { asm_thumb_op16(as, ASM_THUMB_OP_IT | (cc << 4) | mask); }
+static inline void asm_thumb_it_cc(asm_thumb_t *as, uint cc, uint mask) {
+ asm_thumb_op16(as, ASM_THUMB_OP_IT | (cc << 4) | mask);
+}
// FORMAT 1: move shifted register
@@ -128,14 +129,18 @@ static inline void asm_thumb_format_2(asm_thumb_t *as, uint op, uint rlo_dest, u
asm_thumb_op16(as, ASM_THUMB_FORMAT_2_ENCODE(op, rlo_dest, rlo_src, src_b));
}
-static inline void asm_thumb_add_rlo_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, uint rlo_src_b)
- { asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_ADD | ASM_THUMB_FORMAT_2_REG_OPERAND, rlo_dest, rlo_src_a, rlo_src_b); }
-static inline void asm_thumb_add_rlo_rlo_i3(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, int i3_src)
- { asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_ADD | ASM_THUMB_FORMAT_2_IMM_OPERAND, rlo_dest, rlo_src_a, i3_src); }
-static inline void asm_thumb_sub_rlo_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, uint rlo_src_b)
- { asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_SUB | ASM_THUMB_FORMAT_2_REG_OPERAND, rlo_dest, rlo_src_a, rlo_src_b); }
-static inline void asm_thumb_sub_rlo_rlo_i3(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, int i3_src)
- { asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_SUB | ASM_THUMB_FORMAT_2_IMM_OPERAND, rlo_dest, rlo_src_a, i3_src); }
+static inline void asm_thumb_add_rlo_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, uint rlo_src_b) {
+ asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_ADD | ASM_THUMB_FORMAT_2_REG_OPERAND, rlo_dest, rlo_src_a, rlo_src_b);
+}
+static inline void asm_thumb_add_rlo_rlo_i3(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, int i3_src) {
+ asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_ADD | ASM_THUMB_FORMAT_2_IMM_OPERAND, rlo_dest, rlo_src_a, i3_src);
+}
+static inline void asm_thumb_sub_rlo_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, uint rlo_src_b) {
+ asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_SUB | ASM_THUMB_FORMAT_2_REG_OPERAND, rlo_dest, rlo_src_a, rlo_src_b);
+}
+static inline void asm_thumb_sub_rlo_rlo_i3(asm_thumb_t *as, uint rlo_dest, uint rlo_src_a, int i3_src) {
+ asm_thumb_format_2(as, ASM_THUMB_FORMAT_2_SUB | ASM_THUMB_FORMAT_2_IMM_OPERAND, rlo_dest, rlo_src_a, i3_src);
+}
// FORMAT 3: move/compare/add/subtract immediate
// These instructions all do zero extension of the i8 value
@@ -152,10 +157,18 @@ static inline void asm_thumb_format_3(asm_thumb_t *as, uint op, uint rlo, int i8
asm_thumb_op16(as, ASM_THUMB_FORMAT_3_ENCODE(op, rlo, i8));
}
-static inline void asm_thumb_mov_rlo_i8(asm_thumb_t *as, uint rlo, int i8) { asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_MOV, rlo, i8); }
-static inline void asm_thumb_cmp_rlo_i8(asm_thumb_t *as, uint rlo, int i8) { asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_CMP, rlo, i8); }
-static inline void asm_thumb_add_rlo_i8(asm_thumb_t *as, uint rlo, int i8) { asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_ADD, rlo, i8); }
-static inline void asm_thumb_sub_rlo_i8(asm_thumb_t *as, uint rlo, int i8) { asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_SUB, rlo, i8); }
+static inline void asm_thumb_mov_rlo_i8(asm_thumb_t *as, uint rlo, int i8) {
+ asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_MOV, rlo, i8);
+}
+static inline void asm_thumb_cmp_rlo_i8(asm_thumb_t *as, uint rlo, int i8) {
+ asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_CMP, rlo, i8);
+}
+static inline void asm_thumb_add_rlo_i8(asm_thumb_t *as, uint rlo, int i8) {
+ asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_ADD, rlo, i8);
+}
+static inline void asm_thumb_sub_rlo_i8(asm_thumb_t *as, uint rlo, int i8) {
+ asm_thumb_format_3(as, ASM_THUMB_FORMAT_3_SUB, rlo, i8);
+}
// FORMAT 4: ALU operations
@@ -178,7 +191,9 @@ static inline void asm_thumb_sub_rlo_i8(asm_thumb_t *as, uint rlo, int i8) { asm
void asm_thumb_format_4(asm_thumb_t *as, uint op, uint rlo_dest, uint rlo_src);
-static inline void asm_thumb_cmp_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src) { asm_thumb_format_4(as, ASM_THUMB_FORMAT_4_CMP, rlo_dest, rlo_src); }
+static inline void asm_thumb_cmp_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rlo_src) {
+ asm_thumb_format_4(as, ASM_THUMB_FORMAT_4_CMP, rlo_dest, rlo_src);
+}
// FORMAT 9: load/store with immediate offset
// For word transfers the offset must be aligned, and >>2
@@ -198,21 +213,28 @@ static inline void asm_thumb_cmp_rlo_rlo(asm_thumb_t *as, uint rlo_dest, uint rl
#define ASM_THUMB_FORMAT_9_10_ENCODE(op, rlo_dest, rlo_base, offset) \
((op) | (((offset) << 6) & 0x07c0) | ((rlo_base) << 3) | (rlo_dest))
-static inline void asm_thumb_format_9_10(asm_thumb_t *as, uint op, uint rlo_dest, uint rlo_base, uint offset)
- { asm_thumb_op16(as, ASM_THUMB_FORMAT_9_10_ENCODE(op, rlo_dest, rlo_base, offset)); }
-
-static inline void asm_thumb_str_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint word_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_STR | ASM_THUMB_FORMAT_9_WORD_TRANSFER, rlo_src, rlo_base, word_offset); }
-static inline void asm_thumb_strb_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint byte_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_STR | ASM_THUMB_FORMAT_9_BYTE_TRANSFER, rlo_src, rlo_base, byte_offset); }
-static inline void asm_thumb_strh_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint byte_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_10_STRH, rlo_src, rlo_base, byte_offset); }
-static inline void asm_thumb_ldr_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint word_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_LDR | ASM_THUMB_FORMAT_9_WORD_TRANSFER, rlo_dest, rlo_base, word_offset); }
-static inline void asm_thumb_ldrb_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint byte_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_LDR | ASM_THUMB_FORMAT_9_BYTE_TRANSFER , rlo_dest, rlo_base, byte_offset); }
-static inline void asm_thumb_ldrh_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint byte_offset)
- { asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_10_LDRH, rlo_dest, rlo_base, byte_offset); }
+static inline void asm_thumb_format_9_10(asm_thumb_t *as, uint op, uint rlo_dest, uint rlo_base, uint offset) {
+ asm_thumb_op16(as, ASM_THUMB_FORMAT_9_10_ENCODE(op, rlo_dest, rlo_base, offset));
+}
+
+static inline void asm_thumb_str_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint word_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_STR | ASM_THUMB_FORMAT_9_WORD_TRANSFER, rlo_src, rlo_base, word_offset);
+}
+static inline void asm_thumb_strb_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint byte_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_STR | ASM_THUMB_FORMAT_9_BYTE_TRANSFER, rlo_src, rlo_base, byte_offset);
+}
+static inline void asm_thumb_strh_rlo_rlo_i5(asm_thumb_t *as, uint rlo_src, uint rlo_base, uint byte_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_10_STRH, rlo_src, rlo_base, byte_offset);
+}
+static inline void asm_thumb_ldr_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint word_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_LDR | ASM_THUMB_FORMAT_9_WORD_TRANSFER, rlo_dest, rlo_base, word_offset);
+}
+static inline void asm_thumb_ldrb_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint byte_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_9_LDR | ASM_THUMB_FORMAT_9_BYTE_TRANSFER, rlo_dest, rlo_base, byte_offset);
+}
+static inline void asm_thumb_ldrh_rlo_rlo_i5(asm_thumb_t *as, uint rlo_dest, uint rlo_base, uint byte_offset) {
+ asm_thumb_format_9_10(as, ASM_THUMB_FORMAT_10_LDRH, rlo_dest, rlo_base, byte_offset);
+}
// TODO convert these to above format style
diff --git a/py/asmx64.c b/py/asmx64.c
index 8706b806e..4e45f77a4 100644
--- a/py/asmx64.c
+++ b/py/asmx64.c
@@ -63,15 +63,15 @@
#define OPCODE_SUB_R64_FROM_RM64 (0x29)
#define OPCODE_SUB_I32_FROM_RM64 (0x81) /* /5 */
#define OPCODE_SUB_I8_FROM_RM64 (0x83) /* /5 */
-//#define OPCODE_SHL_RM32_BY_I8 (0xc1) /* /4 */
-//#define OPCODE_SHR_RM32_BY_I8 (0xc1) /* /5 */
-//#define OPCODE_SAR_RM32_BY_I8 (0xc1) /* /7 */
+// #define OPCODE_SHL_RM32_BY_I8 (0xc1) /* /4 */
+// #define OPCODE_SHR_RM32_BY_I8 (0xc1) /* /5 */
+// #define OPCODE_SAR_RM32_BY_I8 (0xc1) /* /7 */
#define OPCODE_SHL_RM64_CL (0xd3) /* /4 */
#define OPCODE_SAR_RM64_CL (0xd3) /* /7 */
-//#define OPCODE_CMP_I32_WITH_RM32 (0x81) /* /7 */
-//#define OPCODE_CMP_I8_WITH_RM32 (0x83) /* /7 */
+// #define OPCODE_CMP_I32_WITH_RM32 (0x81) /* /7 */
+// #define OPCODE_CMP_I8_WITH_RM32 (0x83) /* /7 */
#define OPCODE_CMP_R64_WITH_RM64 (0x39) /* /r */
-//#define OPCODE_CMP_RM32_WITH_R32 (0x3b)
+// #define OPCODE_CMP_RM32_WITH_R32 (0x3b)
#define OPCODE_TEST_R8_WITH_RM8 (0x84) /* /r */
#define OPCODE_JMP_REL8 (0xeb)
#define OPCODE_JMP_REL32 (0xe9)
@@ -121,14 +121,14 @@ static inline byte *asm_x64_get_cur_to_write_bytes(asm_x64_t *as, int n) {
}
STATIC void asm_x64_write_byte_1(asm_x64_t *as, byte b1) {
- byte* c = asm_x64_get_cur_to_write_bytes(as, 1);
+ byte *c = asm_x64_get_cur_to_write_bytes(as, 1);
if (c != NULL) {
c[0] = b1;
}
}
STATIC void asm_x64_write_byte_2(asm_x64_t *as, byte b1, byte b2) {
- byte* c = asm_x64_get_cur_to_write_bytes(as, 2);
+ byte *c = asm_x64_get_cur_to_write_bytes(as, 2);
if (c != NULL) {
c[0] = b1;
c[1] = b2;
@@ -136,7 +136,7 @@ STATIC void asm_x64_write_byte_2(asm_x64_t *as, byte b1, byte b2) {
}
STATIC void asm_x64_write_byte_3(asm_x64_t *as, byte b1, byte b2, byte b3) {
- byte* c = asm_x64_get_cur_to_write_bytes(as, 3);
+ byte *c = asm_x64_get_cur_to_write_bytes(as, 3);
if (c != NULL) {
c[0] = b1;
c[1] = b2;
@@ -145,7 +145,7 @@ STATIC void asm_x64_write_byte_3(asm_x64_t *as, byte b1, byte b2, byte b3) {
}
STATIC void asm_x64_write_word32(asm_x64_t *as, int w32) {
- byte* c = asm_x64_get_cur_to_write_bytes(as, 4);
+ byte *c = asm_x64_get_cur_to_write_bytes(as, 4);
if (c != NULL) {
c[0] = IMM32_L0(w32);
c[1] = IMM32_L1(w32);
@@ -155,7 +155,7 @@ STATIC void asm_x64_write_word32(asm_x64_t *as, int w32) {
}
STATIC void asm_x64_write_word64(asm_x64_t *as, int64_t w64) {
- byte* c = asm_x64_get_cur_to_write_bytes(as, 8);
+ byte *c = asm_x64_get_cur_to_write_bytes(as, 8);
if (c != NULL) {
c[0] = IMM32_L0(w64);
c[1] = IMM32_L1(w64);
@@ -382,11 +382,11 @@ void asm_x64_xor_r64_r64(asm_x64_t *as, int dest_r64, int src_r64) {
asm_x64_generic_r64_r64(as, dest_r64, src_r64, OPCODE_XOR_R64_TO_RM64);
}
-void asm_x64_shl_r64_cl(asm_x64_t* as, int dest_r64) {
+void asm_x64_shl_r64_cl(asm_x64_t *as, int dest_r64) {
asm_x64_generic_r64_r64(as, dest_r64, 4, OPCODE_SHL_RM64_CL);
}
-void asm_x64_sar_r64_cl(asm_x64_t* as, int dest_r64) {
+void asm_x64_sar_r64_cl(asm_x64_t *as, int dest_r64) {
asm_x64_generic_r64_r64(as, dest_r64, 7, OPCODE_SAR_RM64_CL);
}
@@ -496,7 +496,7 @@ void asm_x64_jmp_label(asm_x64_t *as, mp_uint_t label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
rel -= 5;
asm_x64_write_byte_1(as, OPCODE_JMP_REL32);
asm_x64_write_word32(as, rel);
@@ -518,7 +518,7 @@ void asm_x64_jcc_label(asm_x64_t *as, int jcc_type, mp_uint_t label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
rel -= 6;
asm_x64_write_byte_2(as, OPCODE_JCC_REL32_A, OPCODE_JCC_REL32_B | jcc_type);
asm_x64_write_word32(as, rel);
@@ -612,12 +612,12 @@ void asm_x64_call_i1(asm_x64_t *as, void* func, int i1) {
void asm_x64_call_ind(asm_x64_t *as, void *ptr, int temp_r64) {
assert(temp_r64 < 8);
-#ifdef __LP64__
+ #ifdef __LP64__
asm_x64_mov_i64_to_r64_optimised(as, (int64_t)ptr, temp_r64);
-#else
+ #else
// If we get here, sizeof(int) == sizeof(void*).
asm_x64_mov_i64_to_r64_optimised(as, (int64_t)(unsigned int)ptr, temp_r64);
-#endif
+ #endif
asm_x64_write_byte_2(as, OPCODE_CALL_RM32, MODRM_R64(2) | MODRM_RM_REG | MODRM_RM_R64(temp_r64));
// this reduces code size by 2 bytes per call, but doesn't seem to speed it up at all
// doesn't work anymore because calls are 64 bits away
diff --git a/py/asmx64.h b/py/asmx64.h
index 113d92511..804e3b709 100644
--- a/py/asmx64.h
+++ b/py/asmx64.h
@@ -79,11 +79,11 @@ static inline void asm_x64_end_pass(asm_x64_t *as) {
(void)as;
}
-void asm_x64_nop(asm_x64_t* as);
-void asm_x64_push_r64(asm_x64_t* as, int src_r64);
-void asm_x64_pop_r64(asm_x64_t* as, int dest_r64);
-void asm_x64_mov_r64_r64(asm_x64_t* as, int dest_r64, int src_r64);
-void asm_x64_mov_i64_to_r64(asm_x64_t* as, int64_t src_i64, int dest_r64);
+void asm_x64_nop(asm_x64_t *as);
+void asm_x64_push_r64(asm_x64_t *as, int src_r64);
+void asm_x64_pop_r64(asm_x64_t *as, int dest_r64);
+void asm_x64_mov_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
+void asm_x64_mov_i64_to_r64(asm_x64_t *as, int64_t src_i64, int dest_r64);
void asm_x64_mov_i64_to_r64_optimised(asm_x64_t *as, int64_t src_i64, int dest_r64);
void asm_x64_mov_i64_to_r64_aligned(asm_x64_t *as, int64_t src_i64, int dest_r64);
void asm_x64_mov_r8_to_mem8(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp);
@@ -97,22 +97,22 @@ void asm_x64_mov_mem64_to_r64(asm_x64_t *as, int src_r64, int src_disp, int dest
void asm_x64_and_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
void asm_x64_or_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
void asm_x64_xor_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
-void asm_x64_shl_r64_cl(asm_x64_t* as, int dest_r64);
-void asm_x64_sar_r64_cl(asm_x64_t* as, int dest_r64);
-void asm_x64_add_r64_r64(asm_x64_t* as, int dest_r64, int src_r64);
-void asm_x64_sub_r64_r64(asm_x64_t* as, int dest_r64, int src_r64);
-void asm_x64_mul_r64_r64(asm_x64_t* as, int dest_r64, int src_r64);
-void asm_x64_cmp_r64_with_r64(asm_x64_t* as, int src_r64_a, int src_r64_b);
-void asm_x64_test_r8_with_r8(asm_x64_t* as, int src_r64_a, int src_r64_b);
-void asm_x64_setcc_r8(asm_x64_t* as, int jcc_type, int dest_r8);
-void asm_x64_jmp_label(asm_x64_t* as, mp_uint_t label);
-void asm_x64_jcc_label(asm_x64_t* as, int jcc_type, mp_uint_t label);
-void asm_x64_entry(asm_x64_t* as, int num_locals);
-void asm_x64_exit(asm_x64_t* as);
-void asm_x64_mov_local_to_r64(asm_x64_t* as, int src_local_num, int dest_r64);
-void asm_x64_mov_r64_to_local(asm_x64_t* as, int src_r64, int dest_local_num);
-void asm_x64_mov_local_addr_to_r64(asm_x64_t* as, int local_num, int dest_r64);
-void asm_x64_call_ind(asm_x64_t* as, void* ptr, int temp_r32);
+void asm_x64_shl_r64_cl(asm_x64_t *as, int dest_r64);
+void asm_x64_sar_r64_cl(asm_x64_t *as, int dest_r64);
+void asm_x64_add_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
+void asm_x64_sub_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
+void asm_x64_mul_r64_r64(asm_x64_t *as, int dest_r64, int src_r64);
+void asm_x64_cmp_r64_with_r64(asm_x64_t *as, int src_r64_a, int src_r64_b);
+void asm_x64_test_r8_with_r8(asm_x64_t *as, int src_r64_a, int src_r64_b);
+void asm_x64_setcc_r8(asm_x64_t *as, int jcc_type, int dest_r8);
+void asm_x64_jmp_label(asm_x64_t *as, mp_uint_t label);
+void asm_x64_jcc_label(asm_x64_t *as, int jcc_type, mp_uint_t label);
+void asm_x64_entry(asm_x64_t *as, int num_locals);
+void asm_x64_exit(asm_x64_t *as);
+void asm_x64_mov_local_to_r64(asm_x64_t *as, int src_local_num, int dest_r64);
+void asm_x64_mov_r64_to_local(asm_x64_t *as, int src_r64, int dest_local_num);
+void asm_x64_mov_local_addr_to_r64(asm_x64_t *as, int local_num, int dest_r64);
+void asm_x64_call_ind(asm_x64_t *as, void *ptr, int temp_r32);
#if defined(GENERIC_ASM_API) && GENERIC_ASM_API
diff --git a/py/asmx86.c b/py/asmx86.c
index 8a08c68a0..05783354e 100644
--- a/py/asmx86.c
+++ b/py/asmx86.c
@@ -41,13 +41,13 @@
#define OPCODE_NOP (0x90)
#define OPCODE_PUSH_R32 (0x50)
-//#define OPCODE_PUSH_I32 (0x68)
-//#define OPCODE_PUSH_M32 (0xff) /* /6 */
+// #define OPCODE_PUSH_I32 (0x68)
+// #define OPCODE_PUSH_M32 (0xff) /* /6 */
#define OPCODE_POP_R32 (0x58)
#define OPCODE_RET (0xc3)
-//#define OPCODE_MOV_I8_TO_R8 (0xb0) /* +rb */
+// #define OPCODE_MOV_I8_TO_R8 (0xb0) /* +rb */
#define OPCODE_MOV_I32_TO_R32 (0xb8)
-//#define OPCODE_MOV_I32_TO_RM32 (0xc7)
+// #define OPCODE_MOV_I32_TO_RM32 (0xc7)
#define OPCODE_MOV_R8_TO_RM8 (0x88) /* /r */
#define OPCODE_MOV_R32_TO_RM32 (0x89) /* /r */
#define OPCODE_MOV_RM32_TO_R32 (0x8b) /* /r */
@@ -63,15 +63,15 @@
#define OPCODE_SUB_R32_FROM_RM32 (0x29)
#define OPCODE_SUB_I32_FROM_RM32 (0x81) /* /5 */
#define OPCODE_SUB_I8_FROM_RM32 (0x83) /* /5 */
-//#define OPCODE_SHL_RM32_BY_I8 (0xc1) /* /4 */
-//#define OPCODE_SHR_RM32_BY_I8 (0xc1) /* /5 */
-//#define OPCODE_SAR_RM32_BY_I8 (0xc1) /* /7 */
+// #define OPCODE_SHL_RM32_BY_I8 (0xc1) /* /4 */
+// #define OPCODE_SHR_RM32_BY_I8 (0xc1) /* /5 */
+// #define OPCODE_SAR_RM32_BY_I8 (0xc1) /* /7 */
#define OPCODE_SHL_RM32_CL (0xd3) /* /4 */
#define OPCODE_SAR_RM32_CL (0xd3) /* /7 */
-//#define OPCODE_CMP_I32_WITH_RM32 (0x81) /* /7 */
-//#define OPCODE_CMP_I8_WITH_RM32 (0x83) /* /7 */
+// #define OPCODE_CMP_I32_WITH_RM32 (0x81) /* /7 */
+// #define OPCODE_CMP_I8_WITH_RM32 (0x83) /* /7 */
#define OPCODE_CMP_R32_WITH_RM32 (0x39)
-//#define OPCODE_CMP_RM32_WITH_R32 (0x3b)
+// #define OPCODE_CMP_RM32_WITH_R32 (0x3b)
#define OPCODE_TEST_R8_WITH_RM8 (0x84) /* /r */
#define OPCODE_JMP_REL8 (0xeb)
#define OPCODE_JMP_REL32 (0xe9)
@@ -101,14 +101,14 @@
#define SIGNED_FIT8(x) (((x) & 0xffffff80) == 0) || (((x) & 0xffffff80) == 0xffffff80)
STATIC void asm_x86_write_byte_1(asm_x86_t *as, byte b1) {
- byte* c = mp_asm_base_get_cur_to_write_bytes(&as->base, 1);
+ byte *c = mp_asm_base_get_cur_to_write_bytes(&as->base, 1);
if (c != NULL) {
c[0] = b1;
}
}
STATIC void asm_x86_write_byte_2(asm_x86_t *as, byte b1, byte b2) {
- byte* c = mp_asm_base_get_cur_to_write_bytes(&as->base, 2);
+ byte *c = mp_asm_base_get_cur_to_write_bytes(&as->base, 2);
if (c != NULL) {
c[0] = b1;
c[1] = b2;
@@ -116,7 +116,7 @@ STATIC void asm_x86_write_byte_2(asm_x86_t *as, byte b1, byte b2) {
}
STATIC void asm_x86_write_byte_3(asm_x86_t *as, byte b1, byte b2, byte b3) {
- byte* c = mp_asm_base_get_cur_to_write_bytes(&as->base, 3);
+ byte *c = mp_asm_base_get_cur_to_write_bytes(&as->base, 3);
if (c != NULL) {
c[0] = b1;
c[1] = b2;
@@ -125,7 +125,7 @@ STATIC void asm_x86_write_byte_3(asm_x86_t *as, byte b1, byte b2, byte b3) {
}
STATIC void asm_x86_write_word32(asm_x86_t *as, int w32) {
- byte* c = mp_asm_base_get_cur_to_write_bytes(&as->base, 4);
+ byte *c = mp_asm_base_get_cur_to_write_bytes(&as->base, 4);
if (c != NULL) {
c[0] = IMM32_L0(w32);
c[1] = IMM32_L1(w32);
@@ -250,11 +250,11 @@ void asm_x86_xor_r32_r32(asm_x86_t *as, int dest_r32, int src_r32) {
asm_x86_generic_r32_r32(as, dest_r32, src_r32, OPCODE_XOR_R32_TO_RM32);
}
-void asm_x86_shl_r32_cl(asm_x86_t* as, int dest_r32) {
+void asm_x86_shl_r32_cl(asm_x86_t *as, int dest_r32) {
asm_x86_generic_r32_r32(as, dest_r32, 4, OPCODE_SHL_RM32_CL);
}
-void asm_x86_sar_r32_cl(asm_x86_t* as, int dest_r32) {
+void asm_x86_sar_r32_cl(asm_x86_t *as, int dest_r32) {
asm_x86_generic_r32_r32(as, dest_r32, 7, OPCODE_SAR_RM32_CL);
}
@@ -358,7 +358,7 @@ void asm_x86_jmp_label(asm_x86_t *as, mp_uint_t label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
rel -= 5;
asm_x86_write_byte_1(as, OPCODE_JMP_REL32);
asm_x86_write_word32(as, rel);
@@ -380,7 +380,7 @@ void asm_x86_jcc_label(asm_x86_t *as, mp_uint_t jcc_type, mp_uint_t label) {
}
} else {
// is a forwards jump, so need to assume it's large
- large_jump:
+ large_jump:
rel -= 6;
asm_x86_write_byte_2(as, OPCODE_JCC_REL32_A, OPCODE_JCC_REL32_B | jcc_type);
asm_x86_write_word32(as, rel);
@@ -462,8 +462,7 @@ void asm_x86_push_local(asm_x86_t *as, int local_num) {
asm_x86_push_disp(as, ASM_X86_REG_EBP, asm_x86_local_offset_from_ebp(as, local_num));
}
-void asm_x86_push_local_addr(asm_x86_t *as, int local_num, int temp_r32)
-{
+void asm_x86_push_local_addr(asm_x86_t *as, int local_num, int temp_r32) {
asm_x86_mov_r32_r32(as, temp_r32, ASM_X86_REG_EBP);
asm_x86_add_i32_to_r32(as, asm_x86_local_offset_from_ebp(as, local_num), temp_r32);
asm_x86_push_r32(as, temp_r32);
@@ -488,14 +487,14 @@ void asm_x86_call_ind(asm_x86_t *as, void *ptr, mp_uint_t n_args, int temp_r32)
if (n_args > 0) {
asm_x86_push_r32(as, ASM_X86_REG_ARG_1);
}
-#ifdef __LP64__
+ #ifdef __LP64__
// We wouldn't run x86 code on an x64 machine. This is here to enable
// testing of the x86 emitter only.
asm_x86_mov_i32_to_r32(as, (int32_t)(int64_t)ptr, temp_r32);
-#else
+ #else
// If we get here, sizeof(int) == sizeof(void*).
asm_x86_mov_i32_to_r32(as, (int32_t)ptr, temp_r32);
-#endif
+ #endif
asm_x86_write_byte_2(as, OPCODE_CALL_RM32, MODRM_R32(2) | MODRM_RM_REG | MODRM_RM_R32(temp_r32));
// this reduces code size by 2 bytes per call, but doesn't seem to speed it up at all
/*
diff --git a/py/asmx86.h b/py/asmx86.h
index 05902350f..1fa7ff738 100644
--- a/py/asmx86.h
+++ b/py/asmx86.h
@@ -82,7 +82,7 @@ static inline void asm_x86_end_pass(asm_x86_t *as) {
(void)as;
}
-void asm_x86_mov_r32_r32(asm_x86_t* as, int dest_r32, int src_r32);
+void asm_x86_mov_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
void asm_x86_mov_i32_to_r32(asm_x86_t *as, int32_t src_i32, int dest_r32);
void asm_x86_mov_i32_to_r32_aligned(asm_x86_t *as, int32_t src_i32, int dest_r32);
void asm_x86_mov_r8_to_mem8(asm_x86_t *as, int src_r32, int dest_r32, int dest_disp);
@@ -94,23 +94,23 @@ void asm_x86_mov_mem32_to_r32(asm_x86_t *as, int src_r32, int src_disp, int dest
void asm_x86_and_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
void asm_x86_or_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
void asm_x86_xor_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
-void asm_x86_shl_r32_cl(asm_x86_t* as, int dest_r32);
-void asm_x86_sar_r32_cl(asm_x86_t* as, int dest_r32);
-void asm_x86_add_r32_r32(asm_x86_t* as, int dest_r32, int src_r32);
-void asm_x86_sub_r32_r32(asm_x86_t* as, int dest_r32, int src_r32);
-void asm_x86_mul_r32_r32(asm_x86_t* as, int dest_r32, int src_r32);
-void asm_x86_cmp_r32_with_r32(asm_x86_t* as, int src_r32_a, int src_r32_b);
-void asm_x86_test_r8_with_r8(asm_x86_t* as, int src_r32_a, int src_r32_b);
-void asm_x86_setcc_r8(asm_x86_t* as, mp_uint_t jcc_type, int dest_r8);
-void asm_x86_jmp_label(asm_x86_t* as, mp_uint_t label);
-void asm_x86_jcc_label(asm_x86_t* as, mp_uint_t jcc_type, mp_uint_t label);
-void asm_x86_entry(asm_x86_t* as, int num_locals);
-void asm_x86_exit(asm_x86_t* as);
+void asm_x86_shl_r32_cl(asm_x86_t *as, int dest_r32);
+void asm_x86_sar_r32_cl(asm_x86_t *as, int dest_r32);
+void asm_x86_add_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
+void asm_x86_sub_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
+void asm_x86_mul_r32_r32(asm_x86_t *as, int dest_r32, int src_r32);
+void asm_x86_cmp_r32_with_r32(asm_x86_t *as, int src_r32_a, int src_r32_b);
+void asm_x86_test_r8_with_r8(asm_x86_t *as, int src_r32_a, int src_r32_b);
+void asm_x86_setcc_r8(asm_x86_t *as, mp_uint_t jcc_type, int dest_r8);
+void asm_x86_jmp_label(asm_x86_t *as, mp_uint_t label);
+void asm_x86_jcc_label(asm_x86_t *as, mp_uint_t jcc_type, mp_uint_t label);
+void asm_x86_entry(asm_x86_t *as, int num_locals);
+void asm_x86_exit(asm_x86_t *as);
void asm_x86_mov_arg_to_r32(asm_x86_t *as, int src_arg_num, int dest_r32);
-void asm_x86_mov_local_to_r32(asm_x86_t* as, int src_local_num, int dest_r32);
-void asm_x86_mov_r32_to_local(asm_x86_t* as, int src_r32, int dest_local_num);
-void asm_x86_mov_local_addr_to_r32(asm_x86_t* as, int local_num, int dest_r32);
-void asm_x86_call_ind(asm_x86_t* as, void* ptr, mp_uint_t n_args, int temp_r32);
+void asm_x86_mov_local_to_r32(asm_x86_t *as, int src_local_num, int dest_r32);
+void asm_x86_mov_r32_to_local(asm_x86_t *as, int src_r32, int dest_local_num);
+void asm_x86_mov_local_addr_to_r32(asm_x86_t *as, int local_num, int dest_r32);
+void asm_x86_call_ind(asm_x86_t *as, void *ptr, mp_uint_t n_args, int temp_r32);
#if defined(GENERIC_ASM_API) && GENERIC_ASM_API
diff --git a/py/asmxtensa.c b/py/asmxtensa.c
index 98b49ecb5..5678eafd1 100644
--- a/py/asmxtensa.c
+++ b/py/asmxtensa.c
@@ -65,7 +65,7 @@ void asm_xtensa_entry(asm_xtensa_t *as, int num_locals) {
// jump over the constants
asm_xtensa_op_j(as, as->num_const * WORD_SIZE + 4 - 4);
mp_asm_base_get_cur_to_write_bytes(&as->base, 1); // padding/alignment byte
- as->const_table = (uint32_t*)mp_asm_base_get_cur_to_write_bytes(&as->base, as->num_const * 4);
+ as->const_table = (uint32_t *)mp_asm_base_get_cur_to_write_bytes(&as->base, as->num_const * 4);
// adjust the stack-pointer to store a0, a12, a13, a14 and locals, 16-byte aligned
as->stack_adjust = (((4 + num_locals) * WORD_SIZE) + 15) & ~15;
diff --git a/py/bc.c b/py/bc.c
index 01131cb4c..40a70fe51 100644
--- a/py/bc.c
+++ b/py/bc.c
@@ -73,21 +73,21 @@ const byte *mp_decode_uint_skip(const byte *ptr) {
}
STATIC NORETURN void fun_pos_args_mismatch(mp_obj_fun_bc_t *f, size_t expected, size_t given) {
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
// generic message, used also for other argument issues
(void)f;
(void)expected;
(void)given;
mp_arg_error_terse_mismatch();
-#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NORMAL
+ #elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NORMAL
(void)f;
mp_raise_TypeError_varg(
translate("function takes %d positional arguments but %d were given"), expected, given);
-#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
+ #elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
mp_raise_TypeError_varg(
translate("%q() takes %d positional arguments but %d were given"),
mp_obj_fun_get_name(MP_OBJ_FROM_PTR(f)), expected, given);
-#endif
+ #endif
}
#if DEBUG_PRINT
@@ -130,7 +130,7 @@ void mp_setup_code_state(mp_code_state_t *code_state, size_t n_args, size_t n_kw
size_t n_def_pos_args = *code_state->ip++;
code_state->sp = &code_state->state[0] - 1;
- code_state->exc_sp = (mp_exc_stack_t*)(code_state->state + n_state) - 1;
+ code_state->exc_sp = (mp_exc_stack_t *)(code_state->state + n_state) - 1;
// zero out the local stack to begin with
memset(code_state->state, 0, n_state * sizeof(*code_state->state));
@@ -187,16 +187,16 @@ void mp_setup_code_state(mp_code_state_t *code_state, size_t n_args, size_t n_kw
}
// get pointer to arg_names array
- const mp_obj_t *arg_names = (const mp_obj_t*)self->const_table;
+ const mp_obj_t *arg_names = (const mp_obj_t *)self->const_table;
for (size_t i = 0; i < n_kw; i++) {
// the keys in kwargs are expected to be qstr objects
mp_obj_t wanted_arg_name = kwargs[2 * i];
- if(MP_UNLIKELY(!MP_OBJ_IS_QSTR(wanted_arg_name))) {
+ if (MP_UNLIKELY(!MP_OBJ_IS_QSTR(wanted_arg_name))) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("unexpected keyword argument"));
+ mp_raise_TypeError(translate("unexpected keyword argument"));
#else
- mp_raise_TypeError(translate("keywords must be strings"));
+ mp_raise_TypeError(translate("keywords must be strings"));
#endif
}
for (size_t j = 0; j < n_pos_args + n_kwonly_args; j++) {
@@ -212,14 +212,14 @@ void mp_setup_code_state(mp_code_state_t *code_state, size_t n_args, size_t n_kw
// Didn't find name match with positional args
if ((scope_flags & MP_SCOPE_FLAG_VARKEYWORDS) == 0) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("unexpected keyword argument"));
+ mp_raise_TypeError(translate("unexpected keyword argument"));
#else
- mp_raise_TypeError_varg(
- translate("unexpected keyword argument '%q'"), MP_OBJ_QSTR_VALUE(wanted_arg_name));
+ mp_raise_TypeError_varg(
+ translate("unexpected keyword argument '%q'"), MP_OBJ_QSTR_VALUE(wanted_arg_name));
#endif
}
mp_obj_dict_store(dict, kwargs[2 * i], kwargs[2 * i + 1]);
-continue2:;
+ continue2:;
}
DEBUG_printf("Args with kws flattened: ");
@@ -251,7 +251,7 @@ continue2:;
if (code_state->state[n_state - 1 - n_pos_args - i] == MP_OBJ_NULL) {
mp_map_elem_t *elem = NULL;
if ((scope_flags & MP_SCOPE_FLAG_DEFKWARGS) != 0) {
- elem = mp_map_lookup(&((mp_obj_dict_t*)MP_OBJ_TO_PTR(self->extra_args[n_def_pos_args]))->map, arg_names[n_pos_args + i], MP_MAP_LOOKUP);
+ elem = mp_map_lookup(&((mp_obj_dict_t *)MP_OBJ_TO_PTR(self->extra_args[n_def_pos_args]))->map, arg_names[n_pos_args + i], MP_MAP_LOOKUP);
}
if (elem != NULL) {
code_state->state[n_state - 1 - n_pos_args - i] = elem->value;
@@ -408,7 +408,7 @@ uint mp_opcode_format(const byte *ip, size_t *opcode_size) {
|| *ip == MP_BC_LOAD_ATTR
|| *ip == MP_BC_STORE_ATTR
#endif
- );
+ );
ip += 1;
if (f == MP_OPCODE_VAR_UINT) {
while ((*ip++ & 0x80) != 0) {
diff --git a/py/bc.h b/py/bc.h
index b71325f92..6f62711c8 100644
--- a/py/bc.h
+++ b/py/bc.h
@@ -86,7 +86,7 @@ typedef struct _mp_code_state_t {
// Variable-length
mp_obj_t state[0];
// Variable-length, never accessed by name, only as (void*)(state + n_state)
- //mp_exc_stack_t exc_state[0];
+ // mp_exc_stack_t exc_state[0];
} mp_code_state_t;
mp_uint_t mp_decode_uint(const byte **ptr);
@@ -102,10 +102,10 @@ const byte *mp_bytecode_print_str(const byte *ip);
#define mp_bytecode_print_inst(code, const_table) mp_bytecode_print2(code, 1, const_table)
// Helper macros to access pointer with least significant bits holding flags
-#define MP_TAGPTR_PTR(x) ((void*)((uintptr_t)(x) & ~((uintptr_t)3)))
+#define MP_TAGPTR_PTR(x) ((void *)((uintptr_t)(x) & ~((uintptr_t)3)))
#define MP_TAGPTR_TAG0(x) ((uintptr_t)(x) & 1)
#define MP_TAGPTR_TAG1(x) ((uintptr_t)(x) & 2)
-#define MP_TAGPTR_MAKE(ptr, tag) ((void*)((uintptr_t)(ptr) | (tag)))
+#define MP_TAGPTR_MAKE(ptr, tag) ((void *)((uintptr_t)(ptr) | (tag)))
#if MICROPY_PERSISTENT_CODE_LOAD || MICROPY_PERSISTENT_CODE_SAVE
diff --git a/py/binary.c b/py/binary.c
index b85edba62..846058525 100644
--- a/py/binary.c
+++ b/py/binary.c
@@ -47,26 +47,43 @@ size_t mp_binary_get_size(char struct_type, char val_type, mp_uint_t *palign) {
size_t size = 0;
int align = 1;
switch (struct_type) {
- case '<': case '>':
+ case '<':
+ case '>':
switch (val_type) {
- case 'b': case 'B': case 'x':
- size = 1; break;
- case 'h': case 'H':
- size = 2; break;
- case 'i': case 'I':
- size = 4; break;
- case 'l': case 'L':
- size = 4; break;
- case 'q': case 'Q':
- size = 8; break;
-#if MICROPY_NONSTANDARD_TYPECODES
- case 'P': case 'O': case 'S':
- size = sizeof(void*); break;
-#endif
+ case 'b':
+ case 'B':
+ case 'x':
+ size = 1;
+ break;
+ case 'h':
+ case 'H':
+ size = 2;
+ break;
+ case 'i':
+ case 'I':
+ size = 4;
+ break;
+ case 'l':
+ case 'L':
+ size = 4;
+ break;
+ case 'q':
+ case 'Q':
+ size = 8;
+ break;
+ #if MICROPY_NONSTANDARD_TYPECODES
+ case 'P':
+ case 'O':
+ case 'S':
+ size = sizeof(void *);
+ break;
+ #endif
case 'f':
- size = sizeof(float); break;
+ size = sizeof(float);
+ break;
case 'd':
- size = sizeof(double); break;
+ size = sizeof(double);
+ break;
}
break;
case '@': {
@@ -79,31 +96,47 @@ size_t mp_binary_get_size(char struct_type, char val_type, mp_uint_t *palign) {
// particular (or any) ABI.
switch (val_type) {
case BYTEARRAY_TYPECODE:
- case 'b': case 'B': case 'x':
- align = size = 1; break;
- case 'h': case 'H':
+ case 'b':
+ case 'B':
+ case 'x':
+ align = size = 1;
+ break;
+ case 'h':
+ case 'H':
align = alignof(short);
- size = sizeof(short); break;
- case 'i': case 'I':
+ size = sizeof(short);
+ break;
+ case 'i':
+ case 'I':
align = alignof(int);
- size = sizeof(int); break;
- case 'l': case 'L':
+ size = sizeof(int);
+ break;
+ case 'l':
+ case 'L':
align = alignof(long);
- size = sizeof(long); break;
- case 'q': case 'Q':
+ size = sizeof(long);
+ break;
+ case 'q':
+ case 'Q':
align = alignof(long long);
- size = sizeof(long long); break;
-#if MICROPY_NONSTANDARD_TYPECODES
- case 'P': case 'O': case 'S':
- align = alignof(void*);
- size = sizeof(void*); break;
-#endif
+ size = sizeof(long long);
+ break;
+ #if MICROPY_NONSTANDARD_TYPECODES
+ case 'P':
+ case 'O':
+ case 'S':
+ align = alignof(void *);
+ size = sizeof(void *);
+ break;
+ #endif
case 'f':
align = alignof(float);
- size = sizeof(float); break;
+ size = sizeof(float);
+ break;
case 'd':
align = alignof(double);
- size = sizeof(double); break;
+ size = sizeof(double);
+ break;
}
}
}
@@ -122,46 +155,46 @@ mp_obj_t mp_binary_get_val_array(char typecode, void *p, mp_uint_t index) {
mp_int_t val = 0;
switch (typecode) {
case 'b':
- val = ((signed char*)p)[index];
+ val = ((signed char *)p)[index];
break;
case BYTEARRAY_TYPECODE:
case 'B':
- val = ((unsigned char*)p)[index];
+ val = ((unsigned char *)p)[index];
break;
case 'h':
- val = ((short*)p)[index];
+ val = ((short *)p)[index];
break;
case 'H':
- val = ((unsigned short*)p)[index];
+ val = ((unsigned short *)p)[index];
break;
case 'i':
- return mp_obj_new_int(((int*)p)[index]);
+ return mp_obj_new_int(((int *)p)[index]);
case 'I':
- return mp_obj_new_int_from_uint(((unsigned int*)p)[index]);
+ return mp_obj_new_int_from_uint(((unsigned int *)p)[index]);
case 'l':
- return mp_obj_new_int(((long*)p)[index]);
+ return mp_obj_new_int(((long *)p)[index]);
case 'L':
- return mp_obj_new_int_from_uint(((unsigned long*)p)[index]);
+ return mp_obj_new_int_from_uint(((unsigned long *)p)[index]);
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
case 'q':
- return mp_obj_new_int_from_ll(((long long*)p)[index]);
+ return mp_obj_new_int_from_ll(((long long *)p)[index]);
case 'Q':
- return mp_obj_new_int_from_ull(((unsigned long long*)p)[index]);
+ return mp_obj_new_int_from_ull(((unsigned long long *)p)[index]);
#endif
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'f':
- return mp_obj_new_float(((float*)p)[index]);
+ return mp_obj_new_float(((float *)p)[index]);
case 'd':
- return mp_obj_new_float(((double*)p)[index]);
-#endif
-#if MICROPY_NONSTANDARD_TYPECODES
+ return mp_obj_new_float(((double *)p)[index]);
+ #endif
+ #if MICROPY_NONSTANDARD_TYPECODES
// Extension to CPython: array of objects
case 'O':
- return ((mp_obj_t*)p)[index];
+ return ((mp_obj_t *)p)[index];
// Extension to CPython: array of pointers
case 'P':
- return mp_obj_new_int((mp_int_t)(uintptr_t)((void**)p)[index]);
-#endif
+ return mp_obj_new_int((mp_int_t)(uintptr_t)((void **)p)[index]);
+ #endif
}
return MP_OBJ_NEW_SMALL_INT(val);
}
@@ -199,7 +232,7 @@ mp_obj_t mp_binary_get_val(char struct_type, char val_type, byte **ptr) {
size_t size = mp_binary_get_size(struct_type, val_type, &align);
if (struct_type == '@') {
// Make pointer aligned
- p = (byte*)MP_ALIGN(p, (size_t)align);
+ p = (byte *)MP_ALIGN(p, (size_t)align);
#if MP_ENDIANNESS_LITTLE
struct_type = '<';
#else
@@ -212,19 +245,23 @@ mp_obj_t mp_binary_get_val(char struct_type, char val_type, byte **ptr) {
if (MICROPY_NONSTANDARD_TYPECODES && (val_type == 'O')) {
return (mp_obj_t)(mp_uint_t)val;
-#if MICROPY_NONSTANDARD_TYPECODES
+ #if MICROPY_NONSTANDARD_TYPECODES
} else if (val_type == 'S') {
- const char *s_val = (const char*)(uintptr_t)(mp_uint_t)val;
+ const char *s_val = (const char *)(uintptr_t)(mp_uint_t)val;
return mp_obj_new_str(s_val, strlen(s_val));
-#endif
-#if MICROPY_PY_BUILTINS_FLOAT
+ #endif
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (val_type == 'f') {
- union { uint32_t i; float f; } fpu = {val};
- return mp_obj_new_float((mp_float_t) fpu.f);
+ union { uint32_t i;
+ float f;
+ } fpu = {val};
+ return mp_obj_new_float((mp_float_t)fpu.f);
} else if (val_type == 'd') {
- union { uint64_t i; double f; } fpu = {val};
+ union { uint64_t i;
+ double f;
+ } fpu = {val};
return mp_obj_new_float(fpu.f);
-#endif
+ #endif
} else if (is_signed(val_type)) {
if ((long long)MP_SMALL_INT_MIN <= val && val <= (long long)MP_SMALL_INT_MAX) {
return mp_obj_new_int((mp_int_t)val);
@@ -245,13 +282,13 @@ void mp_binary_set_int(mp_uint_t val_sz, bool big_endian, byte *dest, mp_uint_t
memcpy(dest, &val, val_sz);
} else if (MP_ENDIANNESS_BIG && big_endian) {
// only copy the least-significant val_sz bytes
- memcpy(dest, (byte*)&val + sizeof(mp_uint_t) - val_sz, val_sz);
+ memcpy(dest, (byte *)&val + sizeof(mp_uint_t) - val_sz, val_sz);
} else {
const byte *src;
if (MP_ENDIANNESS_LITTLE) {
- src = (const byte*)&val + val_sz;
+ src = (const byte *)&val + val_sz;
} else {
- src = (const byte*)&val + sizeof(mp_uint_t);
+ src = (const byte *)&val + sizeof(mp_uint_t);
}
while (val_sz--) {
*dest++ = *--src;
@@ -266,7 +303,7 @@ void mp_binary_set_val(char struct_type, char val_type, mp_obj_t val_in, byte **
size_t size = mp_binary_get_size(struct_type, val_type, &align);
if (struct_type == '@') {
// Make pointer aligned
- p = (byte*)MP_ALIGN(p, (size_t)align);
+ p = (byte *)MP_ALIGN(p, (size_t)align);
if (MP_ENDIANNESS_LITTLE) {
struct_type = '<';
} else {
@@ -277,20 +314,25 @@ void mp_binary_set_val(char struct_type, char val_type, mp_obj_t val_in, byte **
mp_uint_t val;
switch (val_type) {
-#if MICROPY_NONSTANDARD_TYPECODES
+ #if MICROPY_NONSTANDARD_TYPECODES
case 'O':
val = (mp_uint_t)val_in;
break;
-#endif
-#if MICROPY_PY_BUILTINS_FLOAT
+ #endif
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'f': {
- union { uint32_t i; float f; } fp_sp;
+ union { uint32_t i;
+ float f;
+ } fp_sp;
fp_sp.f = mp_obj_get_float(val_in);
val = fp_sp.i;
break;
}
case 'd': {
- union { uint64_t i64; uint32_t i32[2]; double f; } fp_dp;
+ union { uint64_t i64;
+ uint32_t i32[2];
+ double f;
+ } fp_dp;
fp_dp.f = mp_obj_get_float(val_in);
if (BYTES_PER_WORD == 8) {
val = fp_dp.i64;
@@ -302,7 +344,7 @@ void mp_binary_set_val(char struct_type, char val_type, mp_obj_t val_in, byte **
}
break;
}
-#endif
+ #endif
default: {
bool signed_type = is_signed(val_type);
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
@@ -338,20 +380,20 @@ void mp_binary_set_val(char struct_type, char val_type, mp_obj_t val_in, byte **
void mp_binary_set_val_array(char typecode, void *p, mp_uint_t index, mp_obj_t val_in) {
switch (typecode) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'f':
- ((float*)p)[index] = mp_obj_get_float(val_in);
+ ((float *)p)[index] = mp_obj_get_float(val_in);
break;
case 'd':
- ((double*)p)[index] = mp_obj_get_float(val_in);
+ ((double *)p)[index] = mp_obj_get_float(val_in);
break;
-#endif
-#if MICROPY_NONSTANDARD_TYPECODES
+ #endif
+ #if MICROPY_NONSTANDARD_TYPECODES
// Extension to CPython: array of objects
case 'O':
- ((mp_obj_t*)p)[index] = val_in;
+ ((mp_obj_t *)p)[index] = val_in;
break;
-#endif
+ #endif
default: {
size_t size = mp_binary_get_size('@', typecode, NULL);
bool signed_type = is_signed(typecode);
@@ -361,7 +403,7 @@ void mp_binary_set_val_array(char typecode, void *p, mp_uint_t index, mp_obj_t v
// It's a long int.
mp_obj_int_buffer_overflow_check(val_in, size, signed_type);
mp_obj_int_to_bytes_impl(val_in, MP_ENDIANNESS_BIG,
- size, (uint8_t*)p + index * size);
+ size, (uint8_t *)p + index * size);
return;
}
#endif
@@ -376,51 +418,51 @@ void mp_binary_set_val_array(char typecode, void *p, mp_uint_t index, mp_obj_t v
void mp_binary_set_val_array_from_int(char typecode, void *p, mp_uint_t index, mp_int_t val) {
switch (typecode) {
case 'b':
- ((signed char*)p)[index] = val;
+ ((signed char *)p)[index] = val;
break;
case BYTEARRAY_TYPECODE:
case 'B':
- ((unsigned char*)p)[index] = val;
+ ((unsigned char *)p)[index] = val;
break;
case 'h':
- ((short*)p)[index] = val;
+ ((short *)p)[index] = val;
break;
case 'H':
- ((unsigned short*)p)[index] = val;
+ ((unsigned short *)p)[index] = val;
break;
case 'i':
- ((int*)p)[index] = val;
+ ((int *)p)[index] = val;
break;
case 'I':
- ((unsigned int*)p)[index] = val;
+ ((unsigned int *)p)[index] = val;
break;
case 'l':
- ((long*)p)[index] = val;
+ ((long *)p)[index] = val;
break;
case 'L':
- ((unsigned long*)p)[index] = val;
+ ((unsigned long *)p)[index] = val;
break;
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
case 'q':
- ((long long*)p)[index] = val;
+ ((long long *)p)[index] = val;
break;
case 'Q':
- ((unsigned long long*)p)[index] = val;
+ ((unsigned long long *)p)[index] = val;
break;
#endif
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'f':
- ((float*)p)[index] = val;
+ ((float *)p)[index] = val;
break;
case 'd':
- ((double*)p)[index] = val;
+ ((double *)p)[index] = val;
break;
-#endif
-#if MICROPY_NONSTANDARD_TYPECODES
+ #endif
+ #if MICROPY_NONSTANDARD_TYPECODES
// Extension to CPython: array of pointers
case 'P':
- ((void**)p)[index] = (void*)(uintptr_t)val;
+ ((void **)p)[index] = (void *)(uintptr_t)val;
break;
-#endif
+ #endif
}
}
diff --git a/py/builtinevex.c b/py/builtinevex.c
index cff57c413..5538ac783 100644
--- a/py/builtinevex.c
+++ b/py/builtinevex.c
@@ -92,9 +92,15 @@ STATIC mp_obj_t mp_builtin_compile(size_t n_args, const mp_obj_t *args) {
qstr mode = mp_obj_str_get_qstr(args[2]);
mp_parse_input_kind_t parse_input_kind;
switch (mode) {
- case MP_QSTR_single: parse_input_kind = MP_PARSE_SINGLE_INPUT; break;
- case MP_QSTR_exec: parse_input_kind = MP_PARSE_FILE_INPUT; break;
- case MP_QSTR_eval: parse_input_kind = MP_PARSE_EVAL_INPUT; break;
+ case MP_QSTR_single:
+ parse_input_kind = MP_PARSE_SINGLE_INPUT;
+ break;
+ case MP_QSTR_exec:
+ parse_input_kind = MP_PARSE_FILE_INPUT;
+ break;
+ case MP_QSTR_eval:
+ parse_input_kind = MP_PARSE_EVAL_INPUT;
+ break;
default:
mp_raise_ValueError(translate("bad compile mode"));
}
diff --git a/py/builtinhelp.c b/py/builtinhelp.c
index e1dcb6096..2e77e6dd9 100644
--- a/py/builtinhelp.c
+++ b/py/builtinhelp.c
@@ -35,18 +35,18 @@
#if MICROPY_PY_BUILTINS_HELP
const char mp_help_default_text[] =
-"Welcome to MicroPython!\n"
-"\n"
-"For online docs please visit http://docs.micropython.org/\n"
-"\n"
-"Control commands:\n"
-" CTRL-A -- on a blank line, enter raw REPL mode\n"
-" CTRL-B -- on a blank line, enter normal REPL mode\n"
-" CTRL-C -- interrupt a running program\n"
-" CTRL-D -- on a blank line, exit or do a soft reset\n"
-" CTRL-E -- on a blank line, enter paste mode\n"
-"\n"
-"For further help on a specific object, type help(obj)\n"
+ "Welcome to MicroPython!\n"
+ "\n"
+ "For online docs please visit http://docs.micropython.org/\n"
+ "\n"
+ "Control commands:\n"
+ " CTRL-A -- on a blank line, enter raw REPL mode\n"
+ " CTRL-B -- on a blank line, enter normal REPL mode\n"
+ " CTRL-C -- interrupt a running program\n"
+ " CTRL-D -- on a blank line, exit or do a soft reset\n"
+ " CTRL-E -- on a blank line, enter paste mode\n"
+ "\n"
+ "For further help on a specific object, type help(obj)\n"
;
STATIC void mp_help_print_info_about_object(mp_obj_t name_o, mp_obj_t value) {
@@ -105,7 +105,7 @@ STATIC void mp_help_print_modules(void) {
#endif
// sort the list so it's printed in alphabetical order
- mp_obj_list_sort(1, &list, (mp_map_t*)&mp_const_empty_map);
+ mp_obj_list_sort(1, &list, (mp_map_t *)&mp_const_empty_map);
// print the list of modules in a column-first order
#define NUM_COLUMNS (4)
@@ -134,7 +134,7 @@ STATIC void mp_help_print_modules(void) {
}
// let the user know there may be other modules available from the filesystem
- const compressed_string_t* compressed = translate("Plus any modules on the filesystem\n");
+ const compressed_string_t *compressed = translate("Plus any modules on the filesystem\n");
char decompressed[decompress_length(compressed)];
decompress(compressed, decompressed);
mp_print_str(MP_PYTHON_PRINTER, decompressed);
@@ -152,7 +152,7 @@ STATIC void mp_help_print_obj(const mp_obj_t obj) {
mp_obj_type_t *type = mp_obj_get_type(obj);
// try to print something sensible about the given object
- const compressed_string_t* compressed = translate("object ");
+ const compressed_string_t *compressed = translate("object ");
char decompressed_object[decompress_length(compressed)];
decompress(compressed, decompressed_object);
@@ -188,7 +188,7 @@ STATIC void mp_help_print_obj(const mp_obj_t obj) {
STATIC mp_obj_t mp_builtin_help(size_t n_args, const mp_obj_t *args) {
if (n_args == 0) {
// print a general help message. Translate only works on single strings on one line.
- const compressed_string_t* compressed =
+ const compressed_string_t *compressed =
translate("Welcome to Adafruit CircuitPython %s!\n\nPlease visit learn.adafruit.com/category/circuitpython for project guides.\n\nTo list built-in modules please do `help(\"modules\")`.\n");
char decompressed[decompress_length(compressed)];
decompress(compressed, decompressed);
diff --git a/py/builtinimport.c b/py/builtinimport.c
index c4768cc77..8462c146b 100644
--- a/py/builtinimport.c
+++ b/py/builtinimport.c
@@ -63,8 +63,8 @@ bool mp_obj_is_package(mp_obj_t module) {
STATIC mp_import_stat_t mp_import_stat_any(const char *path) {
#if MICROPY_MODULE_FROZEN
if (strncmp(MP_FROZEN_FAKE_DIR_SLASH,
- path,
- MP_FROZEN_FAKE_DIR_SLASH_LENGTH) == 0) {
+ path,
+ MP_FROZEN_FAKE_DIR_SLASH_LENGTH) == 0) {
mp_import_stat_t st = mp_frozen_stat(path + MP_FROZEN_FAKE_DIR_SLASH_LENGTH);
if (st != MP_IMPORT_STAT_NO_EXIST) {
return st;
@@ -104,40 +104,40 @@ STATIC mp_import_stat_t stat_dir_or_file(vstr_t *path) {
}
STATIC mp_import_stat_t find_file(const char *file_str, uint file_len, vstr_t *dest) {
-#if MICROPY_PY_SYS
+ #if MICROPY_PY_SYS
// extract the list of paths
size_t path_num;
mp_obj_t *path_items;
mp_obj_list_get(mp_sys_path, &path_num, &path_items);
if (path_num == 0) {
-#endif
- // mp_sys_path is empty, so just use the given file name
+ #endif
+ // mp_sys_path is empty, so just use the given file name
+ vstr_add_strn(dest, file_str, file_len);
+ return stat_dir_or_file(dest);
+ #if MICROPY_PY_SYS
+} else {
+ // go through each path looking for a directory or file
+ for (size_t i = 0; i < path_num; i++) {
+ vstr_reset(dest);
+ size_t p_len;
+ const char *p = mp_obj_str_get_data(path_items[i], &p_len);
+ DEBUG_printf("Looking in path: %d =%s=\n", i, p);
+ if (p_len > 0) {
+ vstr_add_strn(dest, p, p_len);
+ vstr_add_char(dest, PATH_SEP_CHAR);
+ }
vstr_add_strn(dest, file_str, file_len);
- return stat_dir_or_file(dest);
-#if MICROPY_PY_SYS
- } else {
- // go through each path looking for a directory or file
- for (size_t i = 0; i < path_num; i++) {
- vstr_reset(dest);
- size_t p_len;
- const char *p = mp_obj_str_get_data(path_items[i], &p_len);
- DEBUG_printf("Looking in path: %d =%s=\n", i, p);
- if (p_len > 0) {
- vstr_add_strn(dest, p, p_len);
- vstr_add_char(dest, PATH_SEP_CHAR);
- }
- vstr_add_strn(dest, file_str, file_len);
- mp_import_stat_t stat = stat_dir_or_file(dest);
- if (stat != MP_IMPORT_STAT_NO_EXIST) {
- return stat;
- }
+ mp_import_stat_t stat = stat_dir_or_file(dest);
+ if (stat != MP_IMPORT_STAT_NO_EXIST) {
+ return stat;
}
-
- // could not find a directory or file
- return MP_IMPORT_STAT_NO_EXIST;
}
-#endif
+
+ // could not find a directory or file
+ return MP_IMPORT_STAT_NO_EXIST;
+}
+ #endif
}
#if MICROPY_ENABLE_COMPILER
@@ -198,8 +198,8 @@ STATIC void do_load(mp_obj_t module_obj, vstr_t *file) {
#if MICROPY_MODULE_FROZEN || MICROPY_MODULE_FROZEN_MPY
if (strncmp(MP_FROZEN_FAKE_DIR_SLASH,
- file_str,
- MP_FROZEN_FAKE_DIR_SLASH_LENGTH) == 0) {
+ file_str,
+ MP_FROZEN_FAKE_DIR_SLASH_LENGTH) == 0) {
// If we support frozen modules (either as str or mpy) then try to find the
// requested filename in the list of frozen module filenames.
#if MICROPY_MODULE_FROZEN
@@ -264,14 +264,14 @@ STATIC void chop_component(const char *start, const char **end) {
}
mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
-#if DEBUG_PRINT
+ #if DEBUG_PRINT
DEBUG_printf("__import__:\n");
for (size_t i = 0; i < n_args; i++) {
DEBUG_printf(" ");
mp_obj_print(args[i], PRINT_REPR);
DEBUG_printf("\n");
}
-#endif
+ #endif
mp_obj_t module_name = args[0];
mp_obj_t fromtuple = mp_const_none;
@@ -310,12 +310,12 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
mp_map_elem_t *elem = mp_map_lookup(globals_map, MP_OBJ_NEW_QSTR(MP_QSTR___path__), MP_MAP_LOOKUP);
bool is_pkg = (elem != NULL);
-#if DEBUG_PRINT
+ #if DEBUG_PRINT
DEBUG_printf("Current module/package: ");
mp_obj_print(this_name_q, PRINT_REPR);
DEBUG_printf(", is_package: %d", is_pkg);
DEBUG_printf("\n");
-#endif
+ #endif
size_t this_name_l;
const char *this_name = mp_obj_str_get_data(this_name_q, &this_name_l);
@@ -404,21 +404,21 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
qstr current_module_name = qstr_from_strn(mod_str + last, i - last);
mp_map_elem_t *el = NULL;
if (outer_module_obj == MP_OBJ_NULL) {
- el = mp_map_lookup((mp_map_t*)&mp_builtin_module_map,
- MP_OBJ_NEW_QSTR(current_module_name),
- MP_MAP_LOOKUP);
+ el = mp_map_lookup((mp_map_t *)&mp_builtin_module_map,
+ MP_OBJ_NEW_QSTR(current_module_name),
+ MP_MAP_LOOKUP);
#if MICROPY_MODULE_WEAK_LINKS
// check if there is a weak link to this module
if (el == NULL) {
- el = mp_map_lookup((mp_map_t*)&mp_builtin_module_weak_links_map,
- MP_OBJ_NEW_QSTR(current_module_name),
- MP_MAP_LOOKUP);
+ el = mp_map_lookup((mp_map_t *)&mp_builtin_module_weak_links_map,
+ MP_OBJ_NEW_QSTR(current_module_name),
+ MP_MAP_LOOKUP);
}
#endif
} else {
- el = mp_map_lookup(&((mp_obj_module_t*) outer_module_obj)->globals->map,
- MP_OBJ_NEW_QSTR(current_module_name),
- MP_MAP_LOOKUP);
+ el = mp_map_lookup(&((mp_obj_module_t *)outer_module_obj)->globals->map,
+ MP_OBJ_NEW_QSTR(current_module_name),
+ MP_MAP_LOOKUP);
}
if (el != NULL && MP_OBJ_IS_TYPE(el->value, &mp_type_module)) {
@@ -427,10 +427,10 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
} else {
// couldn't find the file, so fail
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_ImportError(translate("module not found"));
+ mp_raise_ImportError(translate("module not found"));
#else
- mp_raise_msg_varg(&mp_type_ImportError,
- translate("no module named '%q'"), mod_name);
+ mp_raise_msg_varg(&mp_type_ImportError,
+ translate("no module named '%q'"), mod_name);
#endif
}
} else {
@@ -471,7 +471,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
vstr_add_char(&path, PATH_SEP_CHAR);
vstr_add_str(&path, "__init__.py");
if (stat_file_py_or_mpy(&path) != MP_IMPORT_STAT_FILE) {
- //mp_warning("%s is imported as namespace package", vstr_str(&path));
+ // mp_warning("%s is imported as namespace package", vstr_str(&path));
} else {
do_load(module_obj, &path);
}
@@ -488,7 +488,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
// afterwards.
gc_collect();
}
- if (outer_module_obj != MP_OBJ_NULL && VERIFY_PTR(outer_module_obj) ) {
+ if (outer_module_obj != MP_OBJ_NULL && VERIFY_PTR(outer_module_obj)) {
qstr s = qstr_from_strn(mod_str + last, i - last);
mp_store_attr(outer_module_obj, s, module_obj);
// The above store can cause a dictionary rehash and new allocation. So,
@@ -529,7 +529,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
#if MICROPY_MODULE_WEAK_LINKS
// Check if there is a weak link to this module
- mp_map_elem_t *el = mp_map_lookup((mp_map_t*)&mp_builtin_module_weak_links_map, MP_OBJ_NEW_QSTR(module_name_qstr), MP_MAP_LOOKUP);
+ mp_map_elem_t *el = mp_map_lookup((mp_map_t *)&mp_builtin_module_weak_links_map, MP_OBJ_NEW_QSTR(module_name_qstr), MP_MAP_LOOKUP);
if (el != NULL) {
// Found weak-linked module
mp_module_call_init(module_name_qstr, el->value);
@@ -539,10 +539,10 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
// Couldn't find the module, so fail
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_msg(&mp_type_ImportError, translate("module not found"));
+ mp_raise_msg(&mp_type_ImportError, translate("module not found"));
#else
- nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ImportError,
- translate("no module named '%q'"), module_name_qstr));
+ nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ImportError,
+ translate("no module named '%q'"), module_name_qstr));
#endif
}
diff --git a/py/circuitpy_mpconfig.h b/py/circuitpy_mpconfig.h
index f61c3959f..eedda7ad7 100644
--- a/py/circuitpy_mpconfig.h
+++ b/py/circuitpy_mpconfig.h
@@ -148,7 +148,7 @@
#define BYTES_PER_WORD (4)
-#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void*)((mp_uint_t)(p) | 1))
+#define MICROPY_MAKE_POINTER_CALLABLE(p) ((void *)((mp_uint_t)(p) | 1))
// Track stack usage. Expose results via ustack module.
#define MICROPY_MAX_STACK_USAGE (0)
@@ -420,7 +420,7 @@ extern const struct _mp_obj_module_t terminalio_module;
#else
#define ERRNO_MODULE
#
-#endif
+ #endif
#if CIRCUITPY_ESPIDF
extern const struct _mp_obj_module_t espidf_module;
@@ -523,7 +523,7 @@ extern const struct _mp_obj_module_t _eve_module;
extern const struct _mp_obj_module_t memorymonitor_module;
#define MEMORYMONITOR_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_memorymonitor), (mp_obj_t)&memorymonitor_module },
#define MEMORYMONITOR_ROOT_POINTERS mp_obj_t active_allocationsizes; \
- mp_obj_t active_allocationalarms;
+ mp_obj_t active_allocationalarms;
#else
#define MEMORYMONITOR_MODULE
#define MEMORYMONITOR_ROOT_POINTERS
@@ -550,7 +550,7 @@ extern const struct _mp_obj_module_t socket_module;
#define SOCKET_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_socket), (mp_obj_t)&socket_module },
#define NETWORK_ROOT_POINTERS mp_obj_list_t mod_network_nic_list;
#if MICROPY_PY_WIZNET5K
- extern const struct _mp_obj_module_t wiznet_module;
+extern const struct _mp_obj_module_t wiznet_module;
#define WIZNET_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_wiznet), (mp_obj_t)&wiznet_module },
#endif
#else
@@ -853,9 +853,9 @@ extern const struct _mp_obj_module_t msgpack_module;
COUNTIO_MODULE \
DIGITALIO_MODULE \
DISPLAYIO_MODULE \
- FONTIO_MODULE \
- TERMINALIO_MODULE \
- VECTORIO_MODULE \
+ FONTIO_MODULE \
+ TERMINALIO_MODULE \
+ VECTORIO_MODULE \
ERRNO_MODULE \
ESPIDF_MODULE \
FRAMEBUFFERIO_MODULE \
@@ -873,8 +873,8 @@ extern const struct _mp_obj_module_t msgpack_module;
MSGPACK_MODULE \
NEOPIXEL_WRITE_MODULE \
NETWORK_MODULE \
- SOCKET_MODULE \
- WIZNET_MODULE \
+ SOCKET_MODULE \
+ WIZNET_MODULE \
DUALBANK_MODULE \
PEW_MODULE \
PIXELBUF_MODULE \
@@ -938,8 +938,8 @@ struct _supervisor_allocation_node;
BOARD_UART_ROOT_POINTER \
FLASH_ROOT_POINTERS \
MEMORYMONITOR_ROOT_POINTERS \
- NETWORK_ROOT_POINTERS \
- struct _supervisor_allocation_node* first_embedded_allocation; \
+ NETWORK_ROOT_POINTERS \
+ struct _supervisor_allocation_node *first_embedded_allocation; \
void supervisor_run_background_tasks_if_tick(void);
#define RUN_BACKGROUND_TASKS (supervisor_run_background_tasks_if_tick())
diff --git a/py/compile.c b/py/compile.c
index b4d81ed44..4a9fdc7db 100644
--- a/py/compile.c
+++ b/py/compile.c
@@ -48,14 +48,14 @@ typedef enum {
// define rules with a compile function
#define DEF_RULE(rule, comp, kind, ...) PN_##rule,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
PN_const_object, // special node for a constant, generic Python object
// define rules without a compile function
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) PN_##rule,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
} pn_kind_t;
@@ -152,7 +152,7 @@ typedef struct _compiler_t {
STATIC void compile_error_set_line(compiler_t *comp, mp_parse_node_t pn) {
// if the line of the error is unknown then try to update it from the pn
if (comp->compile_error_line == 0 && MP_PARSE_NODE_IS_STRUCT(pn)) {
- comp->compile_error_line = ((mp_parse_node_struct_t*)pn)->source_line;
+ comp->compile_error_line = ((mp_parse_node_struct_t *)pn)->source_line;
}
}
@@ -204,7 +204,7 @@ typedef void (*apply_list_fun_t)(compiler_t *comp, mp_parse_node_t pn);
STATIC void apply_to_single_or_list(compiler_t *comp, mp_parse_node_t pn, pn_kind_t pn_list_kind, apply_list_fun_t f) {
if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, pn_list_kind)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
int num_nodes = MP_PARSE_NODE_STRUCT_NUM_NODES(pns);
for (int i = 0; i < num_nodes; i++) {
f(comp, pns->nodes[i]);
@@ -295,7 +295,7 @@ STATIC void c_if_cond(compiler_t *comp, mp_parse_node_t pn, bool jump_if, int la
}
return;
} else if (MP_PARSE_NODE_IS_STRUCT(pn)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
int n = MP_PARSE_NODE_STRUCT_NUM_NODES(pns);
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_or_test) {
if (jump_if == false) {
@@ -354,7 +354,7 @@ STATIC void c_assign_atom_expr(compiler_t *comp, mp_parse_node_struct_t *pns, as
}
if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_atom_expr_trailers) {
int n = MP_PARSE_NODE_STRUCT_NUM_NODES(pns1);
if (assign_kind != ASSIGN_AUG_STORE) {
@@ -363,7 +363,7 @@ STATIC void c_assign_atom_expr(compiler_t *comp, mp_parse_node_struct_t *pns, as
}
}
assert(MP_PARSE_NODE_IS_STRUCT(pns1->nodes[n - 1]));
- pns1 = (mp_parse_node_struct_t*)pns1->nodes[n - 1];
+ pns1 = (mp_parse_node_struct_t *)pns1->nodes[n - 1];
}
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_trailer_bracket) {
if (assign_kind == ASSIGN_AUG_STORE) {
@@ -423,14 +423,14 @@ STATIC void c_assign_tuple(compiler_t *comp, mp_parse_node_t node_head, uint num
}
if (num_head != 0) {
if (0 == have_star_index) {
- c_assign(comp, ((mp_parse_node_struct_t*)node_head)->nodes[0], ASSIGN_STORE);
+ c_assign(comp, ((mp_parse_node_struct_t *)node_head)->nodes[0], ASSIGN_STORE);
} else {
c_assign(comp, node_head, ASSIGN_STORE);
}
}
for (uint i = 0; i < num_tail; i++) {
if (num_head + i == have_star_index) {
- c_assign(comp, ((mp_parse_node_struct_t*)nodes_tail[i])->nodes[0], ASSIGN_STORE);
+ c_assign(comp, ((mp_parse_node_struct_t *)nodes_tail[i])->nodes[0], ASSIGN_STORE);
} else {
c_assign(comp, nodes_tail[i], ASSIGN_STORE);
}
@@ -458,7 +458,7 @@ STATIC void c_assign(compiler_t *comp, mp_parse_node_t pn, assign_kind_t assign_
}
} else {
// pn must be a struct
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
switch (MP_PARSE_NODE_STRUCT_KIND(pns)) {
case PN_atom_expr_normal:
// lhs is an index or attribute
@@ -484,7 +484,7 @@ STATIC void c_assign(compiler_t *comp, mp_parse_node_t pn, assign_kind_t assign_
if (assign_kind != ASSIGN_STORE) {
goto cannot_assign;
}
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
goto testlist_comp;
}
break;
@@ -498,7 +498,7 @@ STATIC void c_assign(compiler_t *comp, mp_parse_node_t pn, assign_kind_t assign_
// empty list, assignment allowed
c_assign_tuple(comp, MP_PARSE_NODE_NULL, 0, NULL);
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_testlist_comp)) {
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
goto testlist_comp;
} else {
// brackets around 1 item
@@ -511,10 +511,10 @@ STATIC void c_assign(compiler_t *comp, mp_parse_node_t pn, assign_kind_t assign_
}
return;
- testlist_comp:
+ testlist_comp:
// lhs is a sequence
if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns2) == PN_testlist_comp_3b) {
// sequence of one item, with trailing comma
assert(MP_PARSE_NODE_IS_NULL(pns2->nodes[0]));
@@ -531,14 +531,14 @@ STATIC void c_assign(compiler_t *comp, mp_parse_node_t pn, assign_kind_t assign_
}
} else {
// sequence with 2 items
- sequence_with_2_items:
+ sequence_with_2_items:
c_assign_tuple(comp, MP_PARSE_NODE_NULL, 2, pns->nodes);
}
return;
}
return;
- cannot_assign:
+cannot_assign:
compile_syntax_error(comp, pn, translate("can't assign to expression"));
}
@@ -590,7 +590,7 @@ STATIC void compile_funcdef_lambdef_param(compiler_t *comp, mp_parse_node_t pn)
pn_kind = -1;
} else {
assert(MP_PARSE_NODE_IS_STRUCT(pn));
- pn_kind = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pn);
+ pn_kind = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pn);
}
if (pn_kind == PN_typedargslist_star || pn_kind == PN_varargslist_star) {
@@ -620,16 +620,16 @@ STATIC void compile_funcdef_lambdef_param(compiler_t *comp, mp_parse_node_t pn)
} else if (pn_kind == PN_typedargslist_name) {
// this parameter has a colon and/or equal specifier
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
pn_id = pns->nodes[0];
- //pn_colon = pns->nodes[1]; // unused
+ // pn_colon = pns->nodes[1]; // unused
pn_equal = pns->nodes[2];
} else {
assert(pn_kind == PN_varargslist_name); // should be
// this parameter has an equal specifier
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
pn_id = pns->nodes[0];
pn_equal = pns->nodes[1];
}
@@ -719,7 +719,7 @@ STATIC qstr compile_funcdef_helper(compiler_t *comp, mp_parse_node_struct_t *pns
}
// get the scope for this function
- scope_t *fscope = (scope_t*)pns->nodes[4];
+ scope_t *fscope = (scope_t *)pns->nodes[4];
// compile the function definition
compile_funcdef_lambdef(comp, fscope, pns->nodes[1], PN_typedargslist);
@@ -741,7 +741,7 @@ STATIC qstr compile_classdef_helper(compiler_t *comp, mp_parse_node_struct_t *pn
EMIT(load_build_class);
// scope for this class
- scope_t *cscope = (scope_t*)pns->nodes[3];
+ scope_t *cscope = (scope_t *)pns->nodes[3];
// compile the class
close_over_variables_etc(comp, cscope, 0, 0);
@@ -775,7 +775,7 @@ STATIC bool compile_built_in_decorator(compiler_t *comp, int name_len, mp_parse_
qstr attr = MP_PARSE_NODE_LEAF_ARG(name_nodes[1]);
if (attr == MP_QSTR_bytecode) {
*emit_options = MP_EMIT_OPT_BYTECODE;
- // @micropython.native decorator.
+ // @micropython.native decorator.
} else if (attr == MP_QSTR_native) {
// Different from MicroPython: native doesn't raise SyntaxError if native support isn't
// compiled, it just passes through the function unmodified.
@@ -784,16 +784,16 @@ STATIC bool compile_built_in_decorator(compiler_t *comp, int name_len, mp_parse_
#else
return true;
#endif
- #if MICROPY_EMIT_NATIVE
- // @micropython.viper decorator.
+ #if MICROPY_EMIT_NATIVE
+ // @micropython.viper decorator.
} else if (attr == MP_QSTR_viper) {
*emit_options = MP_EMIT_OPT_VIPER;
- #endif
- #if MICROPY_EMIT_INLINE_ASM
- // @micropython.asm_thumb decorator.
+ #endif
+ #if MICROPY_EMIT_INLINE_ASM
+ // @micropython.asm_thumb decorator.
} else if (attr == ASM_DECORATOR_QSTR) {
*emit_options = MP_EMIT_OPT_ASM;
- #endif
+ #endif
} else {
compile_syntax_error(comp, name_nodes[1], translate("invalid micropython decorator"));
}
@@ -813,7 +813,7 @@ STATIC void compile_decorated(compiler_t *comp, mp_parse_node_struct_t *pns) {
int num_built_in_decorators = 0;
for (int i = 0; i < n; i++) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(nodes[i], PN_decorator)); // should be
- mp_parse_node_struct_t *pns_decorator = (mp_parse_node_struct_t*)nodes[i];
+ mp_parse_node_struct_t *pns_decorator = (mp_parse_node_struct_t *)nodes[i];
// nodes[0] contains the decorator function, which is a dotted name
mp_parse_node_t *name_nodes;
@@ -843,16 +843,16 @@ STATIC void compile_decorated(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
// compile the body (funcdef, async funcdef or classdef) and get its name
- mp_parse_node_struct_t *pns_body = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns_body = (mp_parse_node_struct_t *)pns->nodes[1];
qstr body_name = 0;
if (MP_PARSE_NODE_STRUCT_KIND(pns_body) == PN_funcdef) {
body_name = compile_funcdef_helper(comp, pns_body, emit_options);
#if MICROPY_PY_ASYNC_AWAIT
} else if (MP_PARSE_NODE_STRUCT_KIND(pns_body) == PN_async_funcdef) {
assert(MP_PARSE_NODE_IS_STRUCT(pns_body->nodes[0]));
- mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t*)pns_body->nodes[0];
+ mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t *)pns_body->nodes[0];
body_name = compile_funcdef_helper(comp, pns0, emit_options);
- scope_t *fscope = (scope_t*)pns0->nodes[4];
+ scope_t *fscope = (scope_t *)pns0->nodes[4];
fscope->scope_flags |= MP_SCOPE_FLAG_GENERATOR | MP_SCOPE_FLAG_ASYNC;
#endif
} else {
@@ -879,19 +879,19 @@ STATIC void c_del_stmt(compiler_t *comp, mp_parse_node_t pn) {
if (MP_PARSE_NODE_IS_ID(pn)) {
compile_delete_id(comp, MP_PARSE_NODE_LEAF_ARG(pn));
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_atom_expr_normal)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
compile_node(comp, pns->nodes[0]); // base of the atom_expr_normal node
if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_atom_expr_trailers) {
int n = MP_PARSE_NODE_STRUCT_NUM_NODES(pns1);
for (int i = 0; i < n - 1; i++) {
compile_node(comp, pns1->nodes[i]);
}
assert(MP_PARSE_NODE_IS_STRUCT(pns1->nodes[n - 1]));
- pns1 = (mp_parse_node_struct_t*)pns1->nodes[n - 1];
+ pns1 = (mp_parse_node_struct_t *)pns1->nodes[n - 1];
}
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_trailer_bracket) {
compile_node(comp, pns1->nodes[0]);
@@ -907,16 +907,16 @@ STATIC void c_del_stmt(compiler_t *comp, mp_parse_node_t pn) {
}
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_atom_paren)) {
- pn = ((mp_parse_node_struct_t*)pn)->nodes[0];
+ pn = ((mp_parse_node_struct_t *)pn)->nodes[0];
if (MP_PARSE_NODE_IS_NULL(pn)) {
goto cannot_delete;
} else {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_testlist_comp));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
// TODO perhaps factorise testlist_comp code with other uses of PN_testlist_comp
if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_testlist_comp_3b) {
// sequence of one item, with trailing comma
assert(MP_PARSE_NODE_IS_NULL(pns1->nodes[0]));
@@ -936,7 +936,7 @@ STATIC void c_del_stmt(compiler_t *comp, mp_parse_node_t pn) {
}
} else {
// sequence with 2 items
- sequence_with_2_items:
+ sequence_with_2_items:
c_del_stmt(comp, pns->nodes[0]);
c_del_stmt(comp, pns->nodes[1]);
}
@@ -982,10 +982,10 @@ STATIC void compile_return_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
// no argument to 'return', so return None
EMIT_ARG(load_const_tok, MP_TOKEN_KW_NONE);
} else if (MICROPY_COMP_RETURN_IF_EXPR
- && MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_test_if_expr)) {
+ && MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_test_if_expr)) {
// special case when returning an if-expression; to match CPython optimisation
- mp_parse_node_struct_t *pns_test_if_expr = (mp_parse_node_struct_t*)pns->nodes[0];
- mp_parse_node_struct_t *pns_test_if_else = (mp_parse_node_struct_t*)pns_test_if_expr->nodes[1];
+ mp_parse_node_struct_t *pns_test_if_expr = (mp_parse_node_struct_t *)pns->nodes[0];
+ mp_parse_node_struct_t *pns_test_if_else = (mp_parse_node_struct_t *)pns_test_if_expr->nodes[1];
uint l_fail = comp_next_label(comp);
c_if_cond(comp, pns_test_if_else->nodes[0], false, l_fail); // condition
@@ -1010,7 +1010,7 @@ STATIC void compile_raise_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
EMIT_ARG(raise_varargs, 0);
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_raise_stmt_arg)) {
// raise x from y
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
compile_node(comp, pns->nodes[0]);
compile_node(comp, pns->nodes[1]);
EMIT_ARG(raise_varargs, 2);
@@ -1027,7 +1027,7 @@ STATIC void compile_raise_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
STATIC void do_import_name(compiler_t *comp, mp_parse_node_t pn, qstr *q_base) {
bool is_as = false;
if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_dotted_as_name)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
// a name of the form x as y; unwrap it
*q_base = MP_PARSE_NODE_LEAF_ARG(pns->nodes[1]);
pn = pns->nodes[0];
@@ -1046,7 +1046,7 @@ STATIC void do_import_name(compiler_t *comp, mp_parse_node_t pn, qstr *q_base) {
EMIT_ARG(import, q_full, MP_EMIT_IMPORT_NAME);
} else {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_dotted_name)); // should be
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
{
// a name of the form a.b.c
if (!is_as) {
@@ -1105,7 +1105,7 @@ STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
pn_import_source = MP_PARSE_NODE_NULL;
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn_import_source, PN_import_from_2b)) {
// This covers relative imports starting with dot(s) like "from .foo import"
- mp_parse_node_struct_t *pns_2b = (mp_parse_node_struct_t*)pn_import_source;
+ mp_parse_node_struct_t *pns_2b = (mp_parse_node_struct_t *)pn_import_source;
pn_rel = pns_2b->nodes[0];
pn_import_source = pns_2b->nodes[1];
assert(!MP_PARSE_NODE_IS_NULL(pn_import_source)); // should not be
@@ -1149,7 +1149,7 @@ STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
int n = mp_parse_node_extract_list(&pns->nodes[1], PN_import_as_names, &pn_nodes);
for (int i = 0; i < n; i++) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn_nodes[i], PN_import_as_name));
- mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t*)pn_nodes[i];
+ mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t *)pn_nodes[i];
qstr id2 = MP_PARSE_NODE_LEAF_ARG(pns3->nodes[0]); // should be id
EMIT_ARG(load_const_str, id2);
}
@@ -1160,7 +1160,7 @@ STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
do_import_name(comp, pn_import_source, &dummy_q);
for (int i = 0; i < n; i++) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn_nodes[i], PN_import_as_name));
- mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t*)pn_nodes[i];
+ mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t *)pn_nodes[i];
qstr id2 = MP_PARSE_NODE_LEAF_ARG(pns3->nodes[0]); // should be id
EMIT_ARG(import, id2, MP_EMIT_IMPORT_FROM);
if (MP_PARSE_NODE_IS_NULL(pns3->nodes[1])) {
@@ -1273,7 +1273,7 @@ STATIC void compile_if_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
int n_elif = mp_parse_node_extract_list(&pns->nodes[2], PN_if_stmt_elif_list, &pn_elif);
for (int i = 0; i < n_elif; i++) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn_elif[i], PN_if_stmt_elif)); // should be
- mp_parse_node_struct_t *pns_elif = (mp_parse_node_struct_t*)pn_elif[i];
+ mp_parse_node_struct_t *pns_elif = (mp_parse_node_struct_t *)pn_elif[i];
// optimisation: don't emit anything when "if False"
if (!mp_parse_node_is_const_false(pns_elif->nodes[0])) {
@@ -1442,11 +1442,11 @@ STATIC void compile_for_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
// this is actually slower, but uses no heap memory
// for viper it will be much, much faster
if (/*comp->scope_cur->emit_options == MP_EMIT_OPT_VIPER &&*/ MP_PARSE_NODE_IS_ID(pns->nodes[0]) && MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[1], PN_atom_expr_normal)) {
- mp_parse_node_struct_t *pns_it = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns_it = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_IS_ID(pns_it->nodes[0])
&& MP_PARSE_NODE_LEAF_ARG(pns_it->nodes[0]) == MP_QSTR_range
- && MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pns_it->nodes[1]) == PN_trailer_paren) {
- mp_parse_node_t pn_range_args = ((mp_parse_node_struct_t*)pns_it->nodes[1])->nodes[0];
+ && MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pns_it->nodes[1]) == PN_trailer_paren) {
+ mp_parse_node_t pn_range_args = ((mp_parse_node_struct_t *)pns_it->nodes[1])->nodes[0];
mp_parse_node_t *args;
int n_args = mp_parse_node_extract_list(&pn_range_args, PN_arglist, &args);
mp_parse_node_t pn_range_start;
@@ -1475,13 +1475,13 @@ STATIC void compile_for_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
// arguments must be able to be compiled as standard expressions
if (optimize && MP_PARSE_NODE_IS_STRUCT(pn_range_start)) {
- int k = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pn_range_start);
+ int k = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pn_range_start);
if (k == PN_arglist_star || k == PN_arglist_dbl_star || k == PN_argument) {
optimize = false;
}
}
if (optimize && MP_PARSE_NODE_IS_STRUCT(pn_range_end)) {
- int k = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pn_range_end);
+ int k = MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pn_range_end);
if (k == PN_arglist_star || k == PN_arglist_dbl_star || k == PN_argument) {
optimize = false;
}
@@ -1540,7 +1540,7 @@ STATIC void compile_try_except(compiler_t *comp, mp_parse_node_t pn_body, int n_
for (int i = 0; i < n_except; i++) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pn_excepts[i], PN_try_stmt_except)); // should be
- mp_parse_node_struct_t *pns_except = (mp_parse_node_struct_t*)pn_excepts[i];
+ mp_parse_node_struct_t *pns_except = (mp_parse_node_struct_t *)pn_excepts[i];
qstr qstr_exception_local = 0;
uint end_finally_label = comp_next_label(comp);
@@ -1556,7 +1556,7 @@ STATIC void compile_try_except(compiler_t *comp, mp_parse_node_t pn_body, int n_
// this exception handler requires a match to a certain type of exception
mp_parse_node_t pns_exception_expr = pns_except->nodes[0];
if (MP_PARSE_NODE_IS_STRUCT(pns_exception_expr)) {
- mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t*)pns_exception_expr;
+ mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t *)pns_exception_expr;
if (MP_PARSE_NODE_STRUCT_KIND(pns3) == PN_try_stmt_as_name) {
// handler binds the exception to a local
pns_exception_expr = pns3->nodes[0];
@@ -1637,7 +1637,7 @@ STATIC void compile_try_finally(compiler_t *comp, mp_parse_node_t pn_body, int n
STATIC void compile_try_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])); // should be
{
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns2) == PN_try_stmt_finally) {
// just try-finally
compile_try_finally(comp, pns->nodes[0], 0, NULL, MP_PARSE_NODE_NULL, pns2->nodes[0]);
@@ -1650,7 +1650,7 @@ STATIC void compile_try_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
compile_try_except(comp, pns->nodes[0], n_except, pn_excepts, pns2->nodes[1]);
} else {
// have finally
- compile_try_finally(comp, pns->nodes[0], n_except, pn_excepts, pns2->nodes[1], ((mp_parse_node_struct_t*)pns2->nodes[2])->nodes[0]);
+ compile_try_finally(comp, pns->nodes[0], n_except, pn_excepts, pns2->nodes[1], ((mp_parse_node_struct_t *)pns2->nodes[2])->nodes[0]);
}
} else {
// just try-except
@@ -1674,7 +1674,7 @@ STATIC void compile_with_stmt_helper(compiler_t *comp, int n, mp_parse_node_t *n
}
if (MP_PARSE_NODE_IS_STRUCT_KIND(nodes[0], PN_with_item)) {
// this pre-bit is of the form "a as b"
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)nodes[0];
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)nodes[0];
compile_node(comp, pns->nodes[0]);
EMIT_ARG(setup_block, l_end, MP_EMIT_SETUP_BLOCK_WITH);
c_assign(comp, pns->nodes[1], ASSIGN_STORE);
@@ -1713,7 +1713,7 @@ STATIC void compile_yield_from(compiler_t *comp) {
#if MICROPY_PY_ASYNC_AWAIT
STATIC bool compile_require_async_context(compiler_t *comp, mp_parse_node_struct_t *pns) {
int scope_flags = comp->scope_cur->scope_flags;
- if(scope_flags & MP_SCOPE_FLAG_ASYNC) {
+ if (scope_flags & MP_SCOPE_FLAG_ASYNC) {
return true;
}
compile_syntax_error(comp, (mp_parse_node_t)pns,
@@ -1730,7 +1730,7 @@ STATIC void compile_await_object_method(compiler_t *comp, qstr method) {
STATIC void compile_async_for_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
// comp->break_label |= MP_EMIT_BREAK_FROM_FOR;
- if(!compile_require_async_context(comp, pns)) {
+ if (!compile_require_async_context(comp, pns)) {
return;
}
@@ -1800,7 +1800,7 @@ STATIC void compile_async_with_stmt_helper(compiler_t *comp, int n, mp_parse_nod
if (MP_PARSE_NODE_IS_STRUCT_KIND(nodes[0], PN_with_item)) {
// this pre-bit is of the form "a as b"
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)nodes[0];
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)nodes[0];
compile_node(comp, pns->nodes[0]);
context = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]);
compile_store_id(comp, context);
@@ -1872,7 +1872,7 @@ STATIC void compile_async_with_stmt_helper(compiler_t *comp, int n, mp_parse_nod
}
STATIC void compile_async_with_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
- if(!compile_require_async_context(comp, pns)) {
+ if (!compile_require_async_context(comp, pns)) {
return;
}
// get the nodes for the pre-bit of the with (the a as b, c as d, ... bit)
@@ -1886,11 +1886,11 @@ STATIC void compile_async_with_stmt(compiler_t *comp, mp_parse_node_struct_t *pn
STATIC void compile_async_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[0]));
- mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t*)pns->nodes[0];
+ mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t *)pns->nodes[0];
if (MP_PARSE_NODE_STRUCT_KIND(pns0) == PN_funcdef) {
// async def
compile_funcdef(comp, pns0);
- scope_t *fscope = (scope_t*)pns0->nodes[4];
+ scope_t *fscope = (scope_t *)pns0->nodes[4];
fscope->scope_flags |= MP_SCOPE_FLAG_GENERATOR | MP_SCOPE_FLAG_ASYNC;
} else if (MP_PARSE_NODE_STRUCT_KIND(pns0) == PN_for_stmt) {
// async for
@@ -1923,7 +1923,7 @@ STATIC void compile_expr_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
}
} else if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
int kind = MP_PARSE_NODE_STRUCT_KIND(pns1);
if (kind == PN_expr_stmt_augassign) {
c_assign(comp, pns->nodes[0], ASSIGN_AUG_LOAD); // lhs load for aug assign
@@ -1931,18 +1931,43 @@ STATIC void compile_expr_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
assert(MP_PARSE_NODE_IS_TOKEN(pns1->nodes[0]));
mp_binary_op_t op;
switch (MP_PARSE_NODE_LEAF_ARG(pns1->nodes[0])) {
- case MP_TOKEN_DEL_PIPE_EQUAL: op = MP_BINARY_OP_INPLACE_OR; break;
- case MP_TOKEN_DEL_CARET_EQUAL: op = MP_BINARY_OP_INPLACE_XOR; break;
- case MP_TOKEN_DEL_AMPERSAND_EQUAL: op = MP_BINARY_OP_INPLACE_AND; break;
- case MP_TOKEN_DEL_DBL_LESS_EQUAL: op = MP_BINARY_OP_INPLACE_LSHIFT; break;
- case MP_TOKEN_DEL_DBL_MORE_EQUAL: op = MP_BINARY_OP_INPLACE_RSHIFT; break;
- case MP_TOKEN_DEL_PLUS_EQUAL: op = MP_BINARY_OP_INPLACE_ADD; break;
- case MP_TOKEN_DEL_MINUS_EQUAL: op = MP_BINARY_OP_INPLACE_SUBTRACT; break;
- case MP_TOKEN_DEL_STAR_EQUAL: op = MP_BINARY_OP_INPLACE_MULTIPLY; break;
- case MP_TOKEN_DEL_DBL_SLASH_EQUAL: op = MP_BINARY_OP_INPLACE_FLOOR_DIVIDE; break;
- case MP_TOKEN_DEL_SLASH_EQUAL: op = MP_BINARY_OP_INPLACE_TRUE_DIVIDE; break;
- case MP_TOKEN_DEL_PERCENT_EQUAL: op = MP_BINARY_OP_INPLACE_MODULO; break;
- case MP_TOKEN_DEL_DBL_STAR_EQUAL: default: op = MP_BINARY_OP_INPLACE_POWER; break;
+ case MP_TOKEN_DEL_PIPE_EQUAL:
+ op = MP_BINARY_OP_INPLACE_OR;
+ break;
+ case MP_TOKEN_DEL_CARET_EQUAL:
+ op = MP_BINARY_OP_INPLACE_XOR;
+ break;
+ case MP_TOKEN_DEL_AMPERSAND_EQUAL:
+ op = MP_BINARY_OP_INPLACE_AND;
+ break;
+ case MP_TOKEN_DEL_DBL_LESS_EQUAL:
+ op = MP_BINARY_OP_INPLACE_LSHIFT;
+ break;
+ case MP_TOKEN_DEL_DBL_MORE_EQUAL:
+ op = MP_BINARY_OP_INPLACE_RSHIFT;
+ break;
+ case MP_TOKEN_DEL_PLUS_EQUAL:
+ op = MP_BINARY_OP_INPLACE_ADD;
+ break;
+ case MP_TOKEN_DEL_MINUS_EQUAL:
+ op = MP_BINARY_OP_INPLACE_SUBTRACT;
+ break;
+ case MP_TOKEN_DEL_STAR_EQUAL:
+ op = MP_BINARY_OP_INPLACE_MULTIPLY;
+ break;
+ case MP_TOKEN_DEL_DBL_SLASH_EQUAL:
+ op = MP_BINARY_OP_INPLACE_FLOOR_DIVIDE;
+ break;
+ case MP_TOKEN_DEL_SLASH_EQUAL:
+ op = MP_BINARY_OP_INPLACE_TRUE_DIVIDE;
+ break;
+ case MP_TOKEN_DEL_PERCENT_EQUAL:
+ op = MP_BINARY_OP_INPLACE_MODULO;
+ break;
+ case MP_TOKEN_DEL_DBL_STAR_EQUAL:
+ default:
+ op = MP_BINARY_OP_INPLACE_POWER;
+ break;
}
EMIT_ARG(binary_op, op);
c_assign(comp, pns->nodes[0], ASSIGN_AUG_STORE); // lhs store for aug assign
@@ -1965,8 +1990,8 @@ STATIC void compile_expr_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
#if MICROPY_COMP_DOUBLE_TUPLE_ASSIGN
if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[1], PN_testlist_star_expr)
&& MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_testlist_star_expr)) {
- mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t*)pns->nodes[0];
- pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns0 = (mp_parse_node_struct_t *)pns->nodes[0];
+ pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
uint32_t n_pns0 = MP_PARSE_NODE_STRUCT_NUM_NODES(pns0);
// Can only optimise a tuple-to-tuple assignment when all of the following hold:
// - equal number of items in LHS and RHS tuples
@@ -2016,7 +2041,7 @@ STATIC void compile_expr_stmt(compiler_t *comp, mp_parse_node_struct_t *pns) {
STATIC void compile_test_if_expr(compiler_t *comp, mp_parse_node_struct_t *pns) {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[1], PN_test_if_else));
- mp_parse_node_struct_t *pns_test_if_else = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns_test_if_else = (mp_parse_node_struct_t *)pns->nodes[1];
uint l_fail = comp_next_label(comp);
uint l_end = comp_next_label(comp);
@@ -2038,7 +2063,7 @@ STATIC void compile_lambdef(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
// get the scope for this lambda
- scope_t *this_scope = (scope_t*)pns->nodes[2];
+ scope_t *this_scope = (scope_t *)pns->nodes[2];
// compile the lambda definition
compile_funcdef_lambdef(comp, this_scope, pns->nodes[0], PN_varargslist);
@@ -2079,18 +2104,33 @@ STATIC void compile_comparison(compiler_t *comp, mp_parse_node_struct_t *pns) {
if (MP_PARSE_NODE_IS_TOKEN(pns->nodes[i])) {
mp_binary_op_t op;
switch (MP_PARSE_NODE_LEAF_ARG(pns->nodes[i])) {
- case MP_TOKEN_OP_LESS: op = MP_BINARY_OP_LESS; break;
- case MP_TOKEN_OP_MORE: op = MP_BINARY_OP_MORE; break;
- case MP_TOKEN_OP_DBL_EQUAL: op = MP_BINARY_OP_EQUAL; break;
- case MP_TOKEN_OP_LESS_EQUAL: op = MP_BINARY_OP_LESS_EQUAL; break;
- case MP_TOKEN_OP_MORE_EQUAL: op = MP_BINARY_OP_MORE_EQUAL; break;
- case MP_TOKEN_OP_NOT_EQUAL: op = MP_BINARY_OP_NOT_EQUAL; break;
- case MP_TOKEN_KW_IN: default: op = MP_BINARY_OP_IN; break;
+ case MP_TOKEN_OP_LESS:
+ op = MP_BINARY_OP_LESS;
+ break;
+ case MP_TOKEN_OP_MORE:
+ op = MP_BINARY_OP_MORE;
+ break;
+ case MP_TOKEN_OP_DBL_EQUAL:
+ op = MP_BINARY_OP_EQUAL;
+ break;
+ case MP_TOKEN_OP_LESS_EQUAL:
+ op = MP_BINARY_OP_LESS_EQUAL;
+ break;
+ case MP_TOKEN_OP_MORE_EQUAL:
+ op = MP_BINARY_OP_MORE_EQUAL;
+ break;
+ case MP_TOKEN_OP_NOT_EQUAL:
+ op = MP_BINARY_OP_NOT_EQUAL;
+ break;
+ case MP_TOKEN_KW_IN:
+ default:
+ op = MP_BINARY_OP_IN;
+ break;
}
EMIT_ARG(binary_op, op);
} else {
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[i])); // should be
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)pns->nodes[i];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)pns->nodes[i];
int kind = MP_PARSE_NODE_STRUCT_KIND(pns2);
if (kind == PN_comp_op_not_in) {
EMIT_ARG(binary_op, MP_BINARY_OP_NOT_IN);
@@ -2142,13 +2182,27 @@ STATIC void compile_term(compiler_t *comp, mp_parse_node_struct_t *pns) {
mp_binary_op_t op;
mp_token_kind_t tok = MP_PARSE_NODE_LEAF_ARG(pns->nodes[i]);
switch (tok) {
- case MP_TOKEN_OP_PLUS: op = MP_BINARY_OP_ADD; break;
- case MP_TOKEN_OP_MINUS: op = MP_BINARY_OP_SUBTRACT; break;
- case MP_TOKEN_OP_STAR: op = MP_BINARY_OP_MULTIPLY; break;
- case MP_TOKEN_OP_DBL_SLASH: op = MP_BINARY_OP_FLOOR_DIVIDE; break;
- case MP_TOKEN_OP_SLASH: op = MP_BINARY_OP_TRUE_DIVIDE; break;
- case MP_TOKEN_OP_PERCENT: op = MP_BINARY_OP_MODULO; break;
- case MP_TOKEN_OP_DBL_LESS: op = MP_BINARY_OP_LSHIFT; break;
+ case MP_TOKEN_OP_PLUS:
+ op = MP_BINARY_OP_ADD;
+ break;
+ case MP_TOKEN_OP_MINUS:
+ op = MP_BINARY_OP_SUBTRACT;
+ break;
+ case MP_TOKEN_OP_STAR:
+ op = MP_BINARY_OP_MULTIPLY;
+ break;
+ case MP_TOKEN_OP_DBL_SLASH:
+ op = MP_BINARY_OP_FLOOR_DIVIDE;
+ break;
+ case MP_TOKEN_OP_SLASH:
+ op = MP_BINARY_OP_TRUE_DIVIDE;
+ break;
+ case MP_TOKEN_OP_PERCENT:
+ op = MP_BINARY_OP_MODULO;
+ break;
+ case MP_TOKEN_OP_DBL_LESS:
+ op = MP_BINARY_OP_LSHIFT;
+ break;
default:
assert(tok == MP_TOKEN_OP_DBL_MORE);
op = MP_BINARY_OP_RSHIFT;
@@ -2163,8 +2217,12 @@ STATIC void compile_factor_2(compiler_t *comp, mp_parse_node_struct_t *pns) {
mp_unary_op_t op;
mp_token_kind_t tok = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]);
switch (tok) {
- case MP_TOKEN_OP_PLUS: op = MP_UNARY_OP_POSITIVE; break;
- case MP_TOKEN_OP_MINUS: op = MP_UNARY_OP_NEGATIVE; break;
+ case MP_TOKEN_OP_PLUS:
+ op = MP_UNARY_OP_POSITIVE;
+ break;
+ case MP_TOKEN_OP_MINUS:
+ op = MP_UNARY_OP_NEGATIVE;
+ break;
default:
assert(tok == MP_TOKEN_OP_TILDE);
op = MP_UNARY_OP_INVERT;
@@ -2184,10 +2242,10 @@ STATIC void compile_atom_expr_normal(compiler_t *comp, mp_parse_node_struct_t *p
// get the array of trailers (known to be an array of PARSE_NODE_STRUCT)
size_t num_trail = 1;
- mp_parse_node_struct_t **pns_trail = (mp_parse_node_struct_t**)&pns->nodes[1];
+ mp_parse_node_struct_t **pns_trail = (mp_parse_node_struct_t **)&pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns_trail[0]) == PN_atom_expr_trailers) {
num_trail = MP_PARSE_NODE_STRUCT_NUM_NODES(pns_trail[0]);
- pns_trail = (mp_parse_node_struct_t**)&pns_trail[0]->nodes[0];
+ pns_trail = (mp_parse_node_struct_t **)&pns_trail[0]->nodes[0];
}
// the current index into the array of trailers
@@ -2277,7 +2335,7 @@ STATIC void compile_trailer_paren_helper(compiler_t *comp, mp_parse_node_t pn_ar
mp_parse_node_struct_t *star_args_node = NULL, *dblstar_args_node = NULL;
for (int i = 0; i < n_args; i++) {
if (MP_PARSE_NODE_IS_STRUCT(args[i])) {
- mp_parse_node_struct_t *pns_arg = (mp_parse_node_struct_t*)args[i];
+ mp_parse_node_struct_t *pns_arg = (mp_parse_node_struct_t *)args[i];
if (MP_PARSE_NODE_STRUCT_KIND(pns_arg) == PN_arglist_star) {
if (star_flags & MP_EMIT_STAR_FLAG_SINGLE) {
compile_syntax_error(comp, (mp_parse_node_t)pns_arg, translate("can't have multiple *x"));
@@ -2309,7 +2367,7 @@ STATIC void compile_trailer_paren_helper(compiler_t *comp, mp_parse_node_t pn_ar
goto normal_argument;
}
} else {
- normal_argument:
+ normal_argument:
if (star_flags) {
compile_syntax_error(comp, args[i], translate("non-keyword arg after */**"));
return;
@@ -2350,7 +2408,7 @@ STATIC void compile_trailer_paren_helper(compiler_t *comp, mp_parse_node_t pn_ar
STATIC void compile_comprehension(compiler_t *comp, mp_parse_node_struct_t *pns, scope_kind_t kind) {
assert(MP_PARSE_NODE_STRUCT_NUM_NODES(pns) == 2);
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[1], PN_comp_for));
- mp_parse_node_struct_t *pns_comp_for = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns_comp_for = (mp_parse_node_struct_t *)pns->nodes[1];
if (comp->pass == MP_PASS_SCOPE) {
// create a new scope for this comprehension
@@ -2360,7 +2418,7 @@ STATIC void compile_comprehension(compiler_t *comp, mp_parse_node_struct_t *pns,
}
// get the scope for this comprehension
- scope_t *this_scope = (scope_t*)pns_comp_for->nodes[3];
+ scope_t *this_scope = (scope_t *)pns_comp_for->nodes[3];
// compile the comprehension
close_over_variables_etc(comp, this_scope, 0, 0);
@@ -2378,10 +2436,10 @@ STATIC void compile_atom_paren(compiler_t *comp, mp_parse_node_struct_t *pns) {
c_tuple(comp, MP_PARSE_NODE_NULL, NULL);
} else {
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_testlist_comp));
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
assert(!MP_PARSE_NODE_IS_NULL(pns->nodes[1]));
if (MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])) {
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns2) == PN_testlist_comp_3b) {
// tuple of one item, with trailing comma
assert(MP_PARSE_NODE_IS_NULL(pns2->nodes[0]));
@@ -2398,7 +2456,7 @@ STATIC void compile_atom_paren(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
} else {
// tuple with 2 items
- tuple_with_2_items:
+ tuple_with_2_items:
c_tuple(comp, MP_PARSE_NODE_NULL, pns);
}
}
@@ -2409,9 +2467,9 @@ STATIC void compile_atom_bracket(compiler_t *comp, mp_parse_node_struct_t *pns)
// empty list
EMIT_ARG(build, 0, MP_EMIT_BUILD_LIST);
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_testlist_comp)) {
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)pns->nodes[0];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)pns->nodes[0];
if (MP_PARSE_NODE_IS_STRUCT(pns2->nodes[1])) {
- mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t*)pns2->nodes[1];
+ mp_parse_node_struct_t *pns3 = (mp_parse_node_struct_t *)pns2->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns3) == PN_testlist_comp_3b) {
// list of one item, with trailing comma
assert(MP_PARSE_NODE_IS_NULL(pns3->nodes[0]));
@@ -2431,7 +2489,7 @@ STATIC void compile_atom_bracket(compiler_t *comp, mp_parse_node_struct_t *pns)
}
} else {
// list with 2 items
- list_with_2_items:
+ list_with_2_items:
compile_node(comp, pns2->nodes[0]);
compile_node(comp, pns2->nodes[1]);
EMIT_ARG(build, 2, MP_EMIT_BUILD_LIST);
@@ -2449,7 +2507,7 @@ STATIC void compile_atom_brace(compiler_t *comp, mp_parse_node_struct_t *pns) {
// empty dict
EMIT_ARG(build, 0, MP_EMIT_BUILD_MAP);
} else if (MP_PARSE_NODE_IS_STRUCT(pn)) {
- pns = (mp_parse_node_struct_t*)pn;
+ pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_dictorsetmaker_item) {
// dict with one element
EMIT_ARG(build, 1, MP_EMIT_BUILD_MAP);
@@ -2457,7 +2515,7 @@ STATIC void compile_atom_brace(compiler_t *comp, mp_parse_node_struct_t *pns) {
EMIT(store_map);
} else if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_dictorsetmaker) {
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])); // should succeed
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_dictorsetmaker_list) {
// dict/set with multiple elements
@@ -2487,9 +2545,9 @@ STATIC void compile_atom_brace(compiler_t *comp, mp_parse_node_struct_t *pns) {
if (is_dict) {
if (!is_key_value) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- compile_syntax_error(comp, (mp_parse_node_t)pns, translate("invalid syntax"));
+ compile_syntax_error(comp, (mp_parse_node_t)pns, translate("invalid syntax"));
#else
- compile_syntax_error(comp, (mp_parse_node_t)pns, translate("expecting key:value for dict"));
+ compile_syntax_error(comp, (mp_parse_node_t)pns, translate("expecting key:value for dict"));
#endif
return;
}
@@ -2497,9 +2555,9 @@ STATIC void compile_atom_brace(compiler_t *comp, mp_parse_node_struct_t *pns) {
} else {
if (is_key_value) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- compile_syntax_error(comp, (mp_parse_node_t)pns, translate("invalid syntax"));
+ compile_syntax_error(comp, (mp_parse_node_t)pns, translate("invalid syntax"));
#else
- compile_syntax_error(comp, (mp_parse_node_t)pns, translate("expecting just a value for set"));
+ compile_syntax_error(comp, (mp_parse_node_t)pns, translate("expecting just a value for set"));
#endif
return;
}
@@ -2529,7 +2587,7 @@ STATIC void compile_atom_brace(compiler_t *comp, mp_parse_node_struct_t *pns) {
}
} else {
// set with one element
- set_with_one_element:
+ set_with_one_element:
#if MICROPY_PY_BUILTINS_SET
compile_node(comp, pn);
EMIT_ARG(build, 1, MP_EMIT_BUILD_SET);
@@ -2559,7 +2617,7 @@ STATIC void compile_subscript(compiler_t *comp, mp_parse_node_struct_t *pns) {
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_subscript_2) {
compile_node(comp, pns->nodes[0]); // start of slice
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])); // should always be
- pns = (mp_parse_node_struct_t*)pns->nodes[1];
+ pns = (mp_parse_node_struct_t *)pns->nodes[1];
} else {
// pns is a PN_subscript_3, load None for start of slice
EMIT_ARG(load_const_tok, MP_TOKEN_KW_NONE);
@@ -2572,7 +2630,7 @@ STATIC void compile_subscript(compiler_t *comp, mp_parse_node_struct_t *pns) {
EMIT_ARG(load_const_tok, MP_TOKEN_KW_NONE);
EMIT_ARG(build, 2, MP_EMIT_BUILD_SLICE);
} else if (MP_PARSE_NODE_IS_STRUCT(pn)) {
- pns = (mp_parse_node_struct_t*)pn;
+ pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_subscript_3c) {
EMIT_ARG(load_const_tok, MP_TOKEN_KW_NONE);
pn = pns->nodes[0];
@@ -2587,7 +2645,7 @@ STATIC void compile_subscript(compiler_t *comp, mp_parse_node_struct_t *pns) {
} else if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_subscript_3d) {
compile_node(comp, pns->nodes[0]);
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])); // should always be
- pns = (mp_parse_node_struct_t*)pns->nodes[1];
+ pns = (mp_parse_node_struct_t *)pns->nodes[1];
assert(MP_PARSE_NODE_STRUCT_KIND(pns) == PN_sliceop); // should always be
if (MP_PARSE_NODE_IS_NULL(pns->nodes[0])) {
// [?:x:]
@@ -2631,13 +2689,13 @@ STATIC void compile_yield_expr(compiler_t *comp, mp_parse_node_struct_t *pns) {
EMIT_ARG(load_const_tok, MP_TOKEN_KW_NONE);
EMIT_ARG(yield, MP_EMIT_YIELD_VALUE);
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_yield_arg_from)) {
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
-#if MICROPY_PY_ASYNC_AWAIT
- if(comp->scope_cur->scope_flags & MP_SCOPE_FLAG_ASYNC) {
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
+ #if MICROPY_PY_ASYNC_AWAIT
+ if (comp->scope_cur->scope_flags & MP_SCOPE_FLAG_ASYNC) {
compile_syntax_error(comp, (mp_parse_node_t)pns, translate("'yield from' inside async function"));
return;
}
-#endif
+ #endif
compile_node(comp, pns->nodes[0]);
compile_yield_from(comp);
} else {
@@ -2678,13 +2736,13 @@ STATIC void compile_const_object(compiler_t *comp, mp_parse_node_struct_t *pns)
EMIT_ARG(load_const_obj, get_const_object(pns));
}
-typedef void (*compile_function_t)(compiler_t*, mp_parse_node_struct_t*);
+typedef void (*compile_function_t)(compiler_t *, mp_parse_node_struct_t *);
STATIC const compile_function_t compile_function[] = {
// only define rules with a compile function
#define c(f) compile_##f
#define DEF_RULE(rule, comp, kind, ...) comp,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef c
#undef DEF_RULE
#undef DEF_RULE_NC
@@ -2716,8 +2774,12 @@ STATIC void compile_node(compiler_t *comp, mp_parse_node_t pn) {
} else if (MP_PARSE_NODE_IS_LEAF(pn)) {
uintptr_t arg = MP_PARSE_NODE_LEAF_ARG(pn);
switch (MP_PARSE_NODE_LEAF_KIND(pn)) {
- case MP_PARSE_NODE_ID: compile_load_id(comp, arg); break;
- case MP_PARSE_NODE_STRING: EMIT_ARG(load_const_str, arg); break;
+ case MP_PARSE_NODE_ID:
+ compile_load_id(comp, arg);
+ break;
+ case MP_PARSE_NODE_STRING:
+ EMIT_ARG(load_const_str, arg);
+ break;
case MP_PARSE_NODE_BYTES:
// only create and load the actual bytes object on the last pass
if (comp->pass != MP_PASS_EMIT) {
@@ -2728,18 +2790,19 @@ STATIC void compile_node(compiler_t *comp, mp_parse_node_t pn) {
EMIT_ARG(load_const_obj, mp_obj_new_bytes(data, len));
}
break;
- case MP_PARSE_NODE_TOKEN: default:
+ case MP_PARSE_NODE_TOKEN:
+ default:
if (arg == MP_TOKEN_NEWLINE) {
// this can occur when file_input lets through a NEWLINE (eg if file starts with a newline)
// or when single_input lets through a NEWLINE (user enters a blank line)
// do nothing
} else {
- EMIT_ARG(load_const_tok, arg);
+ EMIT_ARG(load_const_tok, arg);
}
break;
}
} else {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
EMIT_ARG(set_source_line, pns->source_line);
assert(MP_PARSE_NODE_STRUCT_KIND(pns) <= PN_const_object);
compile_function_t f = compile_function[MP_PARSE_NODE_STRUCT_KIND(pns)];
@@ -2767,7 +2830,7 @@ STATIC void compile_scope_func_lambda_param(compiler_t *comp, mp_parse_node_t pn
}
} else {
assert(MP_PARSE_NODE_IS_STRUCT(pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == pn_name) {
param_name = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]);
if (comp->have_star) {
@@ -2788,7 +2851,7 @@ STATIC void compile_scope_func_lambda_param(compiler_t *comp, mp_parse_node_t pn
if (MP_PARSE_NODE_IS_NULL(pns->nodes[0])) {
// bare star
// TODO see http://www.python.org/dev/peps/pep-3102/
- //assert(comp->scope_cur->num_dict_params == 0);
+ // assert(comp->scope_cur->num_dict_params == 0);
} else if (MP_PARSE_NODE_IS_ID(pns->nodes[0])) {
// named star
comp->scope_cur->scope_flags |= MP_SCOPE_FLAG_VARARGS;
@@ -2797,7 +2860,7 @@ STATIC void compile_scope_func_lambda_param(compiler_t *comp, mp_parse_node_t pn
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_tfpdef)); // should be
// named star with possible annotation
comp->scope_cur->scope_flags |= MP_SCOPE_FLAG_VARARGS;
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
param_name = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]);
}
} else {
@@ -2835,14 +2898,14 @@ STATIC void compile_scope_func_annotations(compiler_t *comp, mp_parse_node_t pn)
return;
}
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_typedargslist_name) {
// named parameter with possible annotation
// fallthrough
} else if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_typedargslist_star) {
if (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_tfpdef)) {
// named star with possible annotation
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
// fallthrough
} else {
// no annotation
@@ -2879,7 +2942,7 @@ STATIC void compile_scope_comp_iter(compiler_t *comp, mp_parse_node_struct_t *pn
c_assign(comp, pns_comp_for->nodes[0], ASSIGN_STORE);
mp_parse_node_t pn_iter = pns_comp_for->nodes[2];
- tail_recursion:
+tail_recursion:
if (MP_PARSE_NODE_IS_NULL(pn_iter)) {
// no more nested if/for; compile inner expression
compile_node(comp, pn_inner_expr);
@@ -2889,16 +2952,16 @@ STATIC void compile_scope_comp_iter(compiler_t *comp, mp_parse_node_struct_t *pn
} else {
EMIT_ARG(store_comp, comp->scope_cur->kind, 4 * for_depth + 5);
}
- } else if (MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pn_iter) == PN_comp_if) {
+ } else if (MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pn_iter) == PN_comp_if) {
// if condition
- mp_parse_node_struct_t *pns_comp_if = (mp_parse_node_struct_t*)pn_iter;
+ mp_parse_node_struct_t *pns_comp_if = (mp_parse_node_struct_t *)pn_iter;
c_if_cond(comp, pns_comp_if->nodes[0], false, l_top);
pn_iter = pns_comp_if->nodes[1];
goto tail_recursion;
} else {
- assert(MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)pn_iter) == PN_comp_for); // should be
+ assert(MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)pn_iter) == PN_comp_for); // should be
// for loop
- mp_parse_node_struct_t *pns_comp_for2 = (mp_parse_node_struct_t*)pn_iter;
+ mp_parse_node_struct_t *pns_comp_for2 = (mp_parse_node_struct_t *)pn_iter;
compile_node(comp, pns_comp_for2->nodes[1]);
EMIT_ARG(get_iter, true);
compile_scope_comp_iter(comp, pns_comp_for2, pn_inner_expr, for_depth + 1);
@@ -2910,7 +2973,7 @@ STATIC void compile_scope_comp_iter(compiler_t *comp, mp_parse_node_struct_t *pn
}
STATIC void check_for_doc_string(compiler_t *comp, mp_parse_node_t pn) {
-#if MICROPY_ENABLE_DOC_STRING
+ #if MICROPY_ENABLE_DOC_STRING
// see http://www.python.org/dev/peps/pep-0257/
// look for the first statement
@@ -2918,7 +2981,7 @@ STATIC void check_for_doc_string(compiler_t *comp, mp_parse_node_t pn) {
// a statement; fall through
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_file_input_2)) {
// file input; find the first non-newline node
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
int num_nodes = MP_PARSE_NODE_STRUCT_NUM_NODES(pns);
for (int i = 0; i < num_nodes; i++) {
pn = pns->nodes[i];
@@ -2930,28 +2993,28 @@ STATIC void check_for_doc_string(compiler_t *comp, mp_parse_node_t pn) {
// if we didn't find a non-newline then it's okay to fall through; pn will be a newline and so doc-string test below will fail gracefully
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_suite_block_stmts)) {
// a list of statements; get the first one
- pn = ((mp_parse_node_struct_t*)pn)->nodes[0];
+ pn = ((mp_parse_node_struct_t *)pn)->nodes[0];
} else {
return;
}
// check the first statement for a doc string
if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_expr_stmt)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
if ((MP_PARSE_NODE_IS_LEAF(pns->nodes[0])
- && MP_PARSE_NODE_LEAF_KIND(pns->nodes[0]) == MP_PARSE_NODE_STRING)
+ && MP_PARSE_NODE_LEAF_KIND(pns->nodes[0]) == MP_PARSE_NODE_STRING)
|| (MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_const_object)
- && MP_OBJ_IS_STR(get_const_object((mp_parse_node_struct_t*)pns->nodes[0])))) {
- // compile the doc string
- compile_node(comp, pns->nodes[0]);
- // store the doc string
- compile_store_id(comp, MP_QSTR___doc__);
+ && MP_OBJ_IS_STR(get_const_object((mp_parse_node_struct_t *)pns->nodes[0])))) {
+ // compile the doc string
+ compile_node(comp, pns->nodes[0]);
+ // store the doc string
+ compile_store_id(comp, MP_QSTR___doc__);
}
}
-#else
+ #else
(void)comp;
(void)pn;
-#endif
+ #endif
}
STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
@@ -2970,7 +3033,7 @@ STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
// compile
if (MP_PARSE_NODE_IS_STRUCT_KIND(scope->pn, PN_eval_input)) {
assert(scope->kind == SCOPE_MODULE);
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
compile_node(comp, pns->nodes[0]); // compile the expression
EMIT(return_value);
} else if (scope->kind == SCOPE_MODULE) {
@@ -2982,7 +3045,7 @@ STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
EMIT(return_value);
} else if (scope->kind == SCOPE_FUNCTION) {
assert(MP_PARSE_NODE_IS_STRUCT(scope->pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
assert(MP_PARSE_NODE_STRUCT_KIND(pns) == PN_funcdef);
// work out number of parameters, keywords and default parameters, and add them to the id_info array
@@ -3021,7 +3084,7 @@ STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
}
} else if (scope->kind == SCOPE_LAMBDA) {
assert(MP_PARSE_NODE_IS_STRUCT(scope->pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
assert(MP_PARSE_NODE_STRUCT_NUM_NODES(pns) == 3);
// work out number of parameters, keywords and default parameters, and add them to the id_info array
@@ -3043,10 +3106,10 @@ STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
// a bit of a hack at the moment
assert(MP_PARSE_NODE_IS_STRUCT(scope->pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
assert(MP_PARSE_NODE_STRUCT_NUM_NODES(pns) == 2);
assert(MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[1], PN_comp_for));
- mp_parse_node_struct_t *pns_comp_for = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns_comp_for = (mp_parse_node_struct_t *)pns->nodes[1];
// We need a unique name for the comprehension argument (the iterator).
// CPython uses .0, but we should be able to use anything that won't
@@ -3093,7 +3156,7 @@ STATIC void compile_scope(compiler_t *comp, scope_t *scope, pass_kind_t pass) {
} else {
assert(scope->kind == SCOPE_CLASS);
assert(MP_PARSE_NODE_IS_STRUCT(scope->pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
assert(MP_PARSE_NODE_STRUCT_KIND(pns) == PN_classdef);
if (comp->pass == MP_PASS_SCOPE) {
@@ -3145,10 +3208,10 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
// get the function definition parse node
assert(MP_PARSE_NODE_IS_STRUCT(scope->pn));
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)scope->pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)scope->pn;
assert(MP_PARSE_NODE_STRUCT_KIND(pns) == PN_funcdef);
- //qstr f_id = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]); // function name
+ // qstr f_id = MP_PARSE_NODE_LEAF_ARG(pns->nodes[0]); // function name
// parameters are in pns->nodes[1]
if (comp->pass == MP_PASS_CODE_SIZE) {
@@ -3168,11 +3231,21 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
if (MP_PARSE_NODE_IS_ID(pn_annotation)) {
qstr ret_type = MP_PARSE_NODE_LEAF_ARG(pn_annotation);
switch (ret_type) {
- case MP_QSTR_object: type_sig = MP_NATIVE_TYPE_OBJ; break;
- case MP_QSTR_bool: type_sig = MP_NATIVE_TYPE_BOOL; break;
- case MP_QSTR_int: type_sig = MP_NATIVE_TYPE_INT; break;
- case MP_QSTR_uint: type_sig = MP_NATIVE_TYPE_UINT; break;
- default: compile_syntax_error(comp, pn_annotation, translate("unknown type")); return;
+ case MP_QSTR_object:
+ type_sig = MP_NATIVE_TYPE_OBJ;
+ break;
+ case MP_QSTR_bool:
+ type_sig = MP_NATIVE_TYPE_BOOL;
+ break;
+ case MP_QSTR_int:
+ type_sig = MP_NATIVE_TYPE_INT;
+ break;
+ case MP_QSTR_uint:
+ type_sig = MP_NATIVE_TYPE_UINT;
+ break;
+ default:
+ compile_syntax_error(comp, pn_annotation, translate("unknown type"));
+ return;
}
} else {
compile_syntax_error(comp, pn_annotation, translate("return annotation must be an identifier"));
@@ -3185,7 +3258,7 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
for (int i = 0; i < num; i++) {
assert(MP_PARSE_NODE_IS_STRUCT(nodes[i]));
- mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t*)nodes[i];
+ mp_parse_node_struct_t *pns2 = (mp_parse_node_struct_t *)nodes[i];
if (MP_PARSE_NODE_STRUCT_KIND(pns2) == PN_pass_stmt) {
// no instructions
continue;
@@ -3201,7 +3274,7 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
if (!MP_PARSE_NODE_IS_NULL(pns2->nodes[1])) {
goto not_an_instruction;
}
- pns2 = (mp_parse_node_struct_t*)pns2->nodes[0];
+ pns2 = (mp_parse_node_struct_t *)pns2->nodes[0];
if (MP_PARSE_NODE_STRUCT_KIND(pns2) != PN_atom_expr_normal) {
goto not_an_instruction;
}
@@ -3215,7 +3288,7 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
// parse node looks like an instruction
// get instruction name and args
qstr op = MP_PARSE_NODE_LEAF_ARG(pns2->nodes[0]);
- pns2 = (mp_parse_node_struct_t*)pns2->nodes[1]; // PN_trailer_paren
+ pns2 = (mp_parse_node_struct_t *)pns2->nodes[1]; // PN_trailer_paren
mp_parse_node_t *pn_arg;
int n_args = mp_parse_node_extract_list(&pns2->nodes[0], PN_arglist, &pn_arg);
@@ -3238,7 +3311,7 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
return;
}
if (pass > MP_PASS_SCOPE) {
- mp_asm_base_align((mp_asm_base_t*)comp->emit_inline_asm,
+ mp_asm_base_align((mp_asm_base_t *)comp->emit_inline_asm,
MP_PARSE_NODE_LEAF_SMALL_INT(pn_arg[0]));
}
} else if (op == MP_QSTR_data) {
@@ -3253,7 +3326,7 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
compile_syntax_error(comp, nodes[i], translate("'data' requires integer arguments"));
return;
}
- mp_asm_base_data((mp_asm_base_t*)comp->emit_inline_asm,
+ mp_asm_base_data((mp_asm_base_t *)comp->emit_inline_asm,
bytesize, MP_PARSE_NODE_LEAF_SMALL_INT(pn_arg[j]));
}
}
@@ -3273,9 +3346,9 @@ STATIC void compile_scope_inline_asm(compiler_t *comp, scope_t *scope, pass_kind
EMIT_INLINE_ASM_ARG(end_pass, type_sig);
if (comp->pass == MP_PASS_EMIT) {
- void *f = mp_asm_base_get_code((mp_asm_base_t*)comp->emit_inline_asm);
+ void *f = mp_asm_base_get_code((mp_asm_base_t *)comp->emit_inline_asm);
mp_emit_glue_assign_native(comp->scope_cur->raw_code, MP_CODE_NATIVE_ASM,
- f, mp_asm_base_get_code_size((mp_asm_base_t*)comp->emit_inline_asm),
+ f, mp_asm_base_get_code_size((mp_asm_base_t *)comp->emit_inline_asm),
NULL, comp->scope_cur->num_pos_args, 0, type_sig);
}
}
@@ -3297,7 +3370,9 @@ STATIC void scope_compute_things(scope_t *scope) {
if (id->flags & ID_FLAG_IS_STAR_PARAM) {
if (id_param != NULL) {
// swap star param with last param
- id_info_t temp = *id_param; *id_param = *id; *id = temp;
+ id_info_t temp = *id_param;
+ *id_param = *id;
+ *id = temp;
}
break;
} else if (id_param == NULL && id->flags == ID_FLAG_IS_PARAM) {
@@ -3418,9 +3493,9 @@ mp_raw_code_t *mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_f
emit_bc_set_max_num_labels(emit_bc, max_num_labels);
// compile pass 2 and 3
-#if MICROPY_EMIT_NATIVE
+ #if MICROPY_EMIT_NATIVE
emit_t *emit_native = NULL;
-#endif
+ #endif
for (scope_t *s = comp->scope_head; s != NULL && comp->compile_error == MP_OBJ_NULL; s = s->next) {
if (false) {
// dummy
@@ -3451,7 +3526,7 @@ mp_raw_code_t *mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_f
switch (s->emit_options) {
-#if MICROPY_EMIT_NATIVE
+ #if MICROPY_EMIT_NATIVE
case MP_EMIT_OPT_NATIVE_PYTHON:
case MP_EMIT_OPT_VIPER:
if (emit_native == NULL) {
@@ -3461,7 +3536,7 @@ mp_raw_code_t *mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_f
comp->emit = emit_native;
EMIT_ARG(set_native_type, MP_EMIT_NATIVE_TYPE_ENABLE, s->emit_options == MP_EMIT_OPT_VIPER, 0);
break;
-#endif // MICROPY_EMIT_NATIVE
+ #endif // MICROPY_EMIT_NATIVE
default:
comp->emit = emit_bc;
@@ -3498,11 +3573,11 @@ mp_raw_code_t *mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_f
// free the emitters
emit_bc_free(emit_bc);
-#if MICROPY_EMIT_NATIVE
+ #if MICROPY_EMIT_NATIVE
if (emit_native != NULL) {
NATIVE_EMITTER(free)(emit_native);
}
-#endif
+ #endif
#if MICROPY_EMIT_INLINE_ASM
if (comp->emit_inline_asm != NULL) {
ASM_EMITTER(free)(comp->emit_inline_asm);
diff --git a/py/emit.h b/py/emit.h
index 30543d2a3..b142e0641 100644
--- a/py/emit.h
+++ b/py/emit.h
@@ -184,7 +184,7 @@ emit_t *emit_native_thumb_new(mp_obj_t *error_slot, mp_uint_t max_num_labels);
emit_t *emit_native_arm_new(mp_obj_t *error_slot, mp_uint_t max_num_labels);
emit_t *emit_native_xtensa_new(mp_obj_t *error_slot, mp_uint_t max_num_labels);
-void emit_bc_set_max_num_labels(emit_t* emit, mp_uint_t max_num_labels);
+void emit_bc_set_max_num_labels(emit_t *emit, mp_uint_t max_num_labels);
void emit_bc_free(emit_t *emit);
void emit_native_x64_free(emit_t *emit);
diff --git a/py/emitbc.c b/py/emitbc.c
index f45dcb916..37960cb6b 100644
--- a/py/emitbc.c
+++ b/py/emitbc.c
@@ -107,7 +107,7 @@ STATIC void emit_write_uint(emit_t *emit, emit_allocator_t allocator, mp_uint_t
// all functions must go through this one to emit code info
STATIC byte *emit_get_cur_to_write_code_info(emit_t *emit, int num_bytes_to_write) {
- //printf("emit %d\n", num_bytes_to_write);
+ // printf("emit %d\n", num_bytes_to_write);
if (emit->pass < MP_PASS_EMIT) {
emit->code_info_offset += num_bytes_to_write;
return emit->dummy_data;
@@ -119,11 +119,11 @@ STATIC byte *emit_get_cur_to_write_code_info(emit_t *emit, int num_bytes_to_writ
}
}
-STATIC void emit_write_code_info_byte(emit_t* emit, byte val) {
+STATIC void emit_write_code_info_byte(emit_t *emit, byte val) {
*emit_get_cur_to_write_code_info(emit, 1) = val;
}
-STATIC void emit_write_code_info_uint(emit_t* emit, mp_uint_t val) {
+STATIC void emit_write_code_info_uint(emit_t *emit, mp_uint_t val) {
emit_write_uint(emit, emit_get_cur_to_write_code_info, val);
}
@@ -141,7 +141,7 @@ STATIC void emit_write_code_info_qstr(emit_t *emit, qstr qst) {
#if MICROPY_ENABLE_SOURCE_LINE
STATIC void emit_write_code_info_bytes_lines(emit_t *emit, mp_uint_t bytes_to_skip, mp_uint_t lines_to_skip) {
assert(bytes_to_skip > 0 || lines_to_skip > 0);
- //printf(" %d %d\n", bytes_to_skip, lines_to_skip);
+ // printf(" %d %d\n", bytes_to_skip, lines_to_skip);
while (bytes_to_skip > 0 || lines_to_skip > 0) {
mp_uint_t b, l;
if (lines_to_skip <= 6 || bytes_to_skip > 0xf) {
@@ -170,7 +170,7 @@ STATIC void emit_write_code_info_bytes_lines(emit_t *emit, mp_uint_t bytes_to_sk
// all functions must go through this one to emit byte code
STATIC byte *emit_get_cur_to_write_bytecode(emit_t *emit, int num_bytes_to_write) {
- //printf("emit %d\n", num_bytes_to_write);
+ // printf("emit %d\n", num_bytes_to_write);
if (emit->pass < MP_PASS_EMIT) {
emit->bytecode_offset += num_bytes_to_write;
return emit->dummy_data;
@@ -187,7 +187,7 @@ STATIC void emit_write_bytecode_byte(emit_t *emit, byte b1) {
c[0] = b1;
}
-STATIC void emit_write_bytecode_byte_byte(emit_t* emit, byte b1, byte b2) {
+STATIC void emit_write_bytecode_byte_byte(emit_t *emit, byte b1, byte b2) {
byte *c = emit_get_cur_to_write_bytecode(emit, 2);
c[0] = b1;
c[1] = b2;
@@ -234,7 +234,7 @@ STATIC void emit_write_bytecode_byte_const(emit_t *emit, byte b, mp_uint_t n, mp
}
#endif
-STATIC void emit_write_bytecode_byte_qstr(emit_t* emit, byte b, qstr qst) {
+STATIC void emit_write_bytecode_byte_qstr(emit_t *emit, byte b, qstr qst) {
#if MICROPY_PERSISTENT_CODE
assert((qst >> 16) == 0);
byte *c = emit_get_cur_to_write_bytecode(emit, 3);
@@ -255,7 +255,7 @@ STATIC void emit_write_bytecode_byte_obj(emit_t *emit, byte b, mp_obj_t obj) {
// aligns the pointer so it is friendly to GC
emit_write_bytecode_byte(emit, b);
emit->bytecode_offset = (size_t)MP_ALIGN(emit->bytecode_offset, sizeof(mp_obj_t));
- mp_obj_t *c = (mp_obj_t*)emit_get_cur_to_write_bytecode(emit, sizeof(mp_obj_t));
+ mp_obj_t *c = (mp_obj_t *)emit_get_cur_to_write_bytecode(emit, sizeof(mp_obj_t));
// Verify thar c is already uint-aligned
assert(c == MP_ALIGN(c, sizeof(mp_obj_t)));
*c = obj;
@@ -270,10 +270,10 @@ STATIC void emit_write_bytecode_byte_raw_code(emit_t *emit, byte b, mp_raw_code_
#else
// aligns the pointer so it is friendly to GC
emit_write_bytecode_byte(emit, b);
- emit->bytecode_offset = (size_t)MP_ALIGN(emit->bytecode_offset, sizeof(void*));
- void **c = (void**)emit_get_cur_to_write_bytecode(emit, sizeof(void*));
+ emit->bytecode_offset = (size_t)MP_ALIGN(emit->bytecode_offset, sizeof(void *));
+ void **c = (void **)emit_get_cur_to_write_bytecode(emit, sizeof(void *));
// Verify thar c is already uint-aligned
- assert(c == MP_ALIGN(c, sizeof(void*)));
+ assert(c == MP_ALIGN(c, sizeof(void *)));
*c = rc;
#endif
}
@@ -347,7 +347,7 @@ void mp_emit_bc_start_pass(emit_t *emit, pass_kind_t pass, scope_t *scope) {
// for it and hope that is enough! TODO assert this or something.
if (pass == MP_PASS_EMIT) {
emit_write_code_info_uint(emit, emit->code_info_size - emit->code_info_offset);
- } else {
+ } else {
emit_get_cur_to_write_code_info(emit, 2);
}
@@ -469,8 +469,8 @@ static inline void emit_bc_pre(emit_t *emit, mp_int_t stack_size_delta) {
}
void mp_emit_bc_set_source_line(emit_t *emit, mp_uint_t source_line) {
- //printf("source: line %d -> %d offset %d -> %d\n", emit->last_source_line, source_line, emit->last_source_line_offset, emit->bytecode_offset);
-#if MICROPY_ENABLE_SOURCE_LINE
+ // printf("source: line %d -> %d offset %d -> %d\n", emit->last_source_line, source_line, emit->last_source_line_offset, emit->bytecode_offset);
+ #if MICROPY_ENABLE_SOURCE_LINE
if (MP_STATE_VM(mp_optimise_value) >= 3) {
// If we compile with -O3, don't store line numbers.
return;
@@ -482,10 +482,10 @@ void mp_emit_bc_set_source_line(emit_t *emit, mp_uint_t source_line) {
emit->last_source_line_offset = emit->bytecode_offset;
emit->last_source_line = source_line;
}
-#else
+ #else
(void)emit;
(void)source_line;
-#endif
+ #endif
}
void mp_emit_bc_label_assign(emit_t *emit, mp_uint_t l) {
@@ -522,9 +522,15 @@ void mp_emit_bc_import(emit_t *emit, qstr qst, int kind) {
void mp_emit_bc_load_const_tok(emit_t *emit, mp_token_kind_t tok) {
emit_bc_pre(emit, 1);
switch (tok) {
- case MP_TOKEN_KW_FALSE: emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_FALSE); break;
- case MP_TOKEN_KW_NONE: emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_NONE); break;
- case MP_TOKEN_KW_TRUE: emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_TRUE); break;
+ case MP_TOKEN_KW_FALSE:
+ emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_FALSE);
+ break;
+ case MP_TOKEN_KW_NONE:
+ emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_NONE);
+ break;
+ case MP_TOKEN_KW_TRUE:
+ emit_write_bytecode_byte(emit, MP_BC_LOAD_CONST_TRUE);
+ break;
default:
assert(tok == MP_TOKEN_ELLIPSIS);
emit_write_bytecode_byte_obj(emit, MP_BC_LOAD_CONST_OBJ, MP_OBJ_FROM_PTR(&mp_const_ellipsis_obj));
@@ -724,8 +730,8 @@ void mp_emit_bc_setup_block(emit_t *emit, mp_uint_t label, int kind) {
MP_STATIC_ASSERT(MP_BC_SETUP_WITH + MP_EMIT_SETUP_BLOCK_EXCEPT == MP_BC_SETUP_EXCEPT);
MP_STATIC_ASSERT(MP_BC_SETUP_WITH + MP_EMIT_SETUP_BLOCK_FINALLY == MP_BC_SETUP_FINALLY);
if (kind == MP_EMIT_SETUP_BLOCK_WITH) {
- // The SETUP_WITH opcode pops ctx_mgr from the top of the stack
- // and then pushes 3 entries: __exit__, ctx_mgr, as_value.
+ // The SETUP_WITH opcode pops ctx_mgr from the top of the stack
+ // and then pushes 3 entries: __exit__, ctx_mgr, as_value.
emit_bc_pre(emit, 2);
} else {
emit_bc_pre(emit, 0);
@@ -993,4 +999,4 @@ const mp_emit_method_table_id_ops_t mp_emit_bc_method_table_delete_id_ops = {
};
#endif
-#endif //MICROPY_ENABLE_COMPILER
+#endif // MICROPY_ENABLE_COMPILER
diff --git a/py/emitglue.c b/py/emitglue.c
index 7635a73d6..d0286803e 100644
--- a/py/emitglue.c
+++ b/py/emitglue.c
@@ -75,14 +75,14 @@ void mp_emit_glue_assign_bytecode(mp_raw_code_t *rc, const byte *code,
rc->data.u_byte.n_raw_code = n_raw_code;
#endif
-#ifdef DEBUG_PRINT
+ #ifdef DEBUG_PRINT
DEBUG_printf("assign byte code: code=%p len=" UINT_FMT " flags=%x\n", code, len, (uint)scope_flags);
-#endif
-#if MICROPY_DEBUG_PRINTERS
+ #endif
+ #if MICROPY_DEBUG_PRINTERS
if (mp_verbose_flag >= 2) {
mp_bytecode_print(rc, code, len, const_table);
}
-#endif
+ #endif
}
#if MICROPY_EMIT_NATIVE || MICROPY_EMIT_INLINE_ASM
@@ -95,24 +95,24 @@ void mp_emit_glue_assign_native(mp_raw_code_t *rc, mp_raw_code_kind_t kind, void
rc->data.u_native.const_table = const_table;
rc->data.u_native.type_sig = type_sig;
-#ifdef DEBUG_PRINT
+ #ifdef DEBUG_PRINT
DEBUG_printf("assign native: kind=%d fun=%p len=" UINT_FMT " n_pos_args=" UINT_FMT " flags=%x\n", kind, fun_data, fun_len, n_pos_args, (uint)scope_flags);
for (mp_uint_t i = 0; i < fun_len; i++) {
if (i > 0 && i % 16 == 0) {
DEBUG_printf("\n");
}
- DEBUG_printf(" %02x", ((byte*)fun_data)[i]);
+ DEBUG_printf(" %02x", ((byte *)fun_data)[i]);
}
DEBUG_printf("\n");
-#ifdef WRITE_CODE
+ #ifdef WRITE_CODE
FILE *fp_write_code = fopen("out-code", "wb");
fwrite(fun_data, fun_len, 1, fp_write_code);
fclose(fp_write_code);
-#endif
-#else
+ #endif
+ #else
(void)fun_len;
-#endif
+ #endif
}
#endif
diff --git a/py/emitinlinethumb.c b/py/emitinlinethumb.c
index 47ed14321..1faeccbd2 100644
--- a/py/emitinlinethumb.c
+++ b/py/emitinlinethumb.c
@@ -39,14 +39,14 @@ typedef enum {
// define rules with a compile function
#define DEF_RULE(rule, comp, kind, ...) PN_##rule,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
PN_const_object, // special node for a constant, generic Python object
// define rules without a compile function
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) PN_##rule,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
} pn_kind_t;
@@ -131,7 +131,9 @@ STATIC bool emit_inline_thumb_label(emit_inline_asm_t *emit, mp_uint_t label_num
return true;
}
-typedef struct _reg_name_t { byte reg; byte name[3]; } reg_name_t;
+typedef struct _reg_name_t { byte reg;
+ byte name[3];
+} reg_name_t;
STATIC const reg_name_t reg_name_table[] = {
{0, "r0\0"},
{1, "r1\0"},
@@ -157,7 +159,9 @@ STATIC const reg_name_t reg_name_table[] = {
};
#define MAX_SPECIAL_REGISTER_NAME_LENGTH 7
-typedef struct _special_reg_name_t { byte reg; char name[MAX_SPECIAL_REGISTER_NAME_LENGTH + 1]; } special_reg_name_t;
+typedef struct _special_reg_name_t { byte reg;
+ char name[MAX_SPECIAL_REGISTER_NAME_LENGTH + 1];
+} special_reg_name_t;
STATIC const special_reg_name_t special_reg_name_table[] = {
{5, "IPSR"},
{17, "BASEPRI"},
@@ -226,8 +230,8 @@ STATIC mp_uint_t get_arg_vfpreg(emit_inline_asm_t *emit, const char *op, mp_pars
}
if (regno > 31) {
emit_inline_thumb_error_exc(emit,
- mp_obj_new_exception_msg_varg(&mp_type_SyntaxError,
- translate("'%s' expects at most r%d"), op, 31));
+ mp_obj_new_exception_msg_varg(&mp_type_SyntaxError,
+ translate("'%s' expects at most r%d"), op, 31));
return 0;
} else {
return regno;
@@ -235,7 +239,7 @@ STATIC mp_uint_t get_arg_vfpreg(emit_inline_asm_t *emit, const char *op, mp_pars
}
malformed:
emit_inline_thumb_error_exc(emit,
- mp_obj_new_exception_msg_varg(&mp_type_SyntaxError,
+ mp_obj_new_exception_msg_varg(&mp_type_SyntaxError,
translate("'%s' expects an FPU register"), op));
return 0;
}
@@ -248,7 +252,7 @@ STATIC mp_uint_t get_arg_reglist(emit_inline_asm_t *emit, const char *op, mp_par
goto bad_arg;
}
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
assert(MP_PARSE_NODE_STRUCT_NUM_NODES(pns) == 1); // should always be
pn = pns->nodes[0];
@@ -258,10 +262,10 @@ STATIC mp_uint_t get_arg_reglist(emit_inline_asm_t *emit, const char *op, mp_par
// set with one element
reglist |= 1 << get_arg_reg(emit, op, pn, 15);
} else if (MP_PARSE_NODE_IS_STRUCT(pn)) {
- pns = (mp_parse_node_struct_t*)pn;
+ pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == PN_dictorsetmaker) {
assert(MP_PARSE_NODE_IS_STRUCT(pns->nodes[1])); // should succeed
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pns->nodes[1];
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pns->nodes[1];
if (MP_PARSE_NODE_STRUCT_KIND(pns1) == PN_dictorsetmaker_list) {
// set with multiple elements
@@ -311,11 +315,11 @@ STATIC bool get_arg_addr(emit_inline_asm_t *emit, const char *op, mp_parse_node_
if (!MP_PARSE_NODE_IS_STRUCT_KIND(pn, PN_atom_bracket)) {
goto bad_arg;
}
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
if (!MP_PARSE_NODE_IS_STRUCT_KIND(pns->nodes[0], PN_testlist_comp)) {
goto bad_arg;
}
- pns = (mp_parse_node_struct_t*)pns->nodes[0];
+ pns = (mp_parse_node_struct_t *)pns->nodes[0];
if (MP_PARSE_NODE_STRUCT_NUM_NODES(pns) != 2) {
goto bad_arg;
}
@@ -347,7 +351,9 @@ STATIC int get_arg_label(emit_inline_asm_t *emit, const char *op, mp_parse_node_
return 0;
}
-typedef struct _cc_name_t { byte cc; byte name[2]; } cc_name_t;
+typedef struct _cc_name_t { byte cc;
+ byte name[2];
+} cc_name_t;
STATIC const cc_name_t cc_name_table[] = {
{ ASM_THUMB_CC_EQ, "eq" },
{ ASM_THUMB_CC_NE, "ne" },
@@ -365,7 +371,9 @@ STATIC const cc_name_t cc_name_table[] = {
{ ASM_THUMB_CC_LE, "le" },
};
-typedef struct _format_4_op_t { byte op; char name[3]; } format_4_op_t;
+typedef struct _format_4_op_t { byte op;
+ char name[3];
+} format_4_op_t;
#define X(x) (((x) >> 4) & 0xff) // only need 1 byte to distinguish these ops
STATIC const format_4_op_t format_4_op_table[] = {
{ X(ASM_THUMB_FORMAT_4_EOR), "eor" },
@@ -387,7 +395,9 @@ STATIC const format_4_op_t format_4_op_table[] = {
#undef X
// name is actually a qstr, which should fit in 16 bits
-typedef struct _format_9_10_op_t { uint16_t op; uint16_t name; } format_9_10_op_t;
+typedef struct _format_9_10_op_t { uint16_t op;
+ uint16_t name;
+} format_9_10_op_t;
#define X(x) (x)
STATIC const format_9_10_op_t format_9_10_op_table[] = {
{ X(ASM_THUMB_FORMAT_9_LDR | ASM_THUMB_FORMAT_9_WORD_TRANSFER), MP_QSTR_ldr },
@@ -401,7 +411,9 @@ STATIC const format_9_10_op_t format_9_10_op_table[] = {
#if MICROPY_EMIT_INLINE_THUMB_FLOAT
// actual opcodes are: 0xee00 | op.hi_nibble, 0x0a00 | op.lo_nibble
-typedef struct _format_vfp_op_t { byte op; char name[3]; } format_vfp_op_t;
+typedef struct _format_vfp_op_t { byte op;
+ char name[3];
+} format_vfp_op_t;
STATIC const format_vfp_op_t format_vfp_op_table[] = {
{ 0x30, "add" },
{ 0x34, "sub" },
@@ -425,7 +437,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
// "subs", RLO, RLO, I3, asm_thumb_subs_reg_reg_i3
size_t op_len;
- const char *op_str = (const char*)qstr_data(op, &op_len);
+ const char *op_str = (const char *)qstr_data(op, &op_len);
#if MICROPY_EMIT_INLINE_THUMB_FLOAT
if (op_str[0] == 'v') {
@@ -434,7 +446,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
mp_uint_t op_code = 0x0ac0, op_code_hi;
if (op == MP_QSTR_vcmp) {
op_code_hi = 0xeeb4;
- op_vfp_twoargs:;
+ op_vfp_twoargs:;
mp_uint_t vd = get_arg_vfpreg(emit, op_str, pn_args[0]);
mp_uint_t vm = get_arg_vfpreg(emit, op_str, pn_args[1]);
asm_thumb_op32(&emit->as,
@@ -485,7 +497,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
0x0a10 | (r_arm << 12) | ((vm & 1) << 7));
} else if (op == MP_QSTR_vldr) {
op_code_hi = 0xed90;
- op_vldr_vstr:;
+ op_vldr_vstr:;
mp_uint_t vd = get_arg_vfpreg(emit, op_str, pn_args[0]);
mp_parse_node_t pn_base, pn_offset;
if (get_arg_addr(emit, op_str, pn_args[1], &pn_base, &pn_offset)) {
@@ -547,8 +559,8 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
mp_uint_t r = get_arg_reg(emit, op_str, pn_args[0], 15);
asm_thumb_op16(&emit->as, 0x4700 | (r << 3));
} else if (op_str[0] == 'b' && (op_len == 3
- || (op_len == 5 && op_str[3] == '_'
- && (op_str[4] == 'n' || (ARMV7M && op_str[4] == 'w'))))) {
+ || (op_len == 5 && op_str[3] == '_'
+ && (op_str[4] == 'n' || (ARMV7M && op_str[4] == 'w'))))) {
mp_uint_t cc = -1;
for (mp_uint_t i = 0; i < MP_ARRAY_SIZE(cc_name_table); i++) {
if (op_str[1] == cc_name_table[i].name[0] && op_str[2] == cc_name_table[i].name[1]) {
@@ -637,7 +649,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
op_code_hi = 0xfab0;
op_code = 0xf080;
mp_uint_t rd, rm;
- op_clz_rbit:
+ op_clz_rbit:
rd = get_arg_reg(emit, op_str, pn_args[0], 15);
rm = get_arg_reg(emit, op_str, pn_args[1], 15);
asm_thumb_op32(&emit->as, op_code_hi | rm, op_code | (rd << 8) | rm);
@@ -645,7 +657,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
op_code_hi = 0xfa90;
op_code = 0xf0a0;
goto op_clz_rbit;
- } else if (ARMV7M && op == MP_QSTR_mrs){
+ } else if (ARMV7M && op == MP_QSTR_mrs) {
mp_uint_t reg_dest = get_arg_reg(emit, op_str, pn_args[0], 12);
mp_uint_t reg_src = get_arg_special_reg(emit, op_str, pn_args[1]);
asm_thumb_op32(&emit->as, 0xf3ef, 0x8000 | (reg_dest << 8) | reg_src);
@@ -653,7 +665,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
if (op == MP_QSTR_and_) {
op_code = ASM_THUMB_FORMAT_4_AND;
mp_uint_t reg_dest, reg_src;
- op_format_4:
+ op_format_4:
reg_dest = get_arg_reg(emit, op_str, pn_args[0], 7);
reg_src = get_arg_reg(emit, op_str, pn_args[1], 7);
asm_thumb_format_4(&emit->as, op_code, reg_dest, reg_src);
@@ -674,7 +686,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
if (op == MP_QSTR_mov) {
op_code = ASM_THUMB_FORMAT_3_MOV;
mp_uint_t rlo_dest, i8_src;
- op_format_3:
+ op_format_3:
rlo_dest = get_arg_reg(emit, op_str, pn_args[0], 7);
i8_src = get_arg_i(emit, op_str, pn_args[1], 0xff);
asm_thumb_format_3(&emit->as, op_code, rlo_dest, i8_src);
@@ -690,7 +702,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
} else if (ARMV7M && op == MP_QSTR_movw) {
op_code = ASM_THUMB_OP_MOVW;
mp_uint_t reg_dest;
- op_movw_movt:
+ op_movw_movt:
reg_dest = get_arg_reg(emit, op_str, pn_args[0], 15);
int i_src = get_arg_i(emit, op_str, pn_args[1], 0xffff);
asm_thumb_mov_reg_i16(&emit->as, op_code, reg_dest, i_src);
@@ -743,7 +755,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
if (op == MP_QSTR_lsl) {
op_code = ASM_THUMB_FORMAT_1_LSL;
mp_uint_t rlo_dest, rlo_src, i5;
- op_format_1:
+ op_format_1:
rlo_dest = get_arg_reg(emit, op_str, pn_args[0], 7);
rlo_src = get_arg_reg(emit, op_str, pn_args[1], 7);
i5 = get_arg_i(emit, op_str, pn_args[2], 0x1f);
@@ -757,7 +769,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
} else if (op == MP_QSTR_add) {
op_code = ASM_THUMB_FORMAT_2_ADD;
mp_uint_t rlo_dest, rlo_src;
- op_format_2:
+ op_format_2:
rlo_dest = get_arg_reg(emit, op_str, pn_args[0], 7);
rlo_src = get_arg_reg(emit, op_str, pn_args[1], 7);
int src_b;
@@ -772,7 +784,7 @@ STATIC void emit_inline_thumb_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_a
} else if (ARMV7M && op == MP_QSTR_sdiv) {
op_code = 0xfb90; // sdiv high part
mp_uint_t rd, rn, rm;
- op_sdiv_udiv:
+ op_sdiv_udiv:
rd = get_arg_reg(emit, op_str, pn_args[0], 15);
rn = get_arg_reg(emit, op_str, pn_args[1], 15);
rm = get_arg_reg(emit, op_str, pn_args[2], 15);
diff --git a/py/emitinlinextensa.c b/py/emitinlinextensa.c
index ae84aae2e..8094c0bef 100644
--- a/py/emitinlinextensa.c
+++ b/py/emitinlinextensa.c
@@ -115,7 +115,9 @@ STATIC bool emit_inline_xtensa_label(emit_inline_asm_t *emit, mp_uint_t label_nu
return true;
}
-typedef struct _reg_name_t { byte reg; byte name[3]; } reg_name_t;
+typedef struct _reg_name_t { byte reg;
+ byte name[3];
+} reg_name_t;
STATIC const reg_name_t reg_name_table[] = {
{0, "a0\0"},
{1, "a1\0"},
@@ -242,7 +244,7 @@ STATIC const opcode_table_3arg_t opcode_table_3arg[] = {
STATIC void emit_inline_xtensa_op(emit_inline_asm_t *emit, qstr op, mp_uint_t n_args, mp_parse_node_t *pn_args) {
size_t op_len;
- const char *op_str = (const char*)qstr_data(op, &op_len);
+ const char *op_str = (const char *)qstr_data(op, &op_len);
if (n_args == 0) {
if (op == MP_QSTR_ret_n) {
diff --git a/py/emitnative.c b/py/emitnative.c
index 51919e389..57b75030a 100644
--- a/py/emitnative.c
+++ b/py/emitnative.c
@@ -86,7 +86,7 @@
#define EMIT_NATIVE_VIPER_TYPE_ERROR(emit, ...) do { \
*emit->error_slot = mp_obj_new_exception_msg_varg(&mp_type_ViperTypeError, __VA_ARGS__); \
- } while (0)
+} while (0)
typedef enum {
STACK_VALUE,
@@ -114,15 +114,25 @@ typedef enum {
STATIC qstr vtype_to_qstr(vtype_kind_t vtype) {
switch (vtype) {
- case VTYPE_PYOBJ: return MP_QSTR_object;
- case VTYPE_BOOL: return MP_QSTR_bool;
- case VTYPE_INT: return MP_QSTR_int;
- case VTYPE_UINT: return MP_QSTR_uint;
- case VTYPE_PTR: return MP_QSTR_ptr;
- case VTYPE_PTR8: return MP_QSTR_ptr8;
- case VTYPE_PTR16: return MP_QSTR_ptr16;
- case VTYPE_PTR32: return MP_QSTR_ptr32;
- case VTYPE_PTR_NONE: default: return MP_QSTR_None;
+ case VTYPE_PYOBJ:
+ return MP_QSTR_object;
+ case VTYPE_BOOL:
+ return MP_QSTR_bool;
+ case VTYPE_INT:
+ return MP_QSTR_int;
+ case VTYPE_UINT:
+ return MP_QSTR_uint;
+ case VTYPE_PTR:
+ return MP_QSTR_ptr;
+ case VTYPE_PTR8:
+ return MP_QSTR_ptr8;
+ case VTYPE_PTR16:
+ return MP_QSTR_ptr16;
+ case VTYPE_PTR32:
+ return MP_QSTR_ptr32;
+ case VTYPE_PTR_NONE:
+ default:
+ return MP_QSTR_None;
}
}
@@ -163,7 +173,7 @@ struct _emit_t {
ASM_T *as;
};
-emit_t *EXPORT_FUN(new)(mp_obj_t *error_slot, mp_uint_t max_num_labels) {
+emit_t *EXPORT_FUN(new)(mp_obj_t * error_slot, mp_uint_t max_num_labels) {
emit_t *emit = m_new0(emit_t, 1);
emit->error_slot = error_slot;
emit->as = m_new0(ASM_T, 1);
@@ -171,7 +181,7 @@ emit_t *EXPORT_FUN(new)(mp_obj_t *error_slot, mp_uint_t max_num_labels) {
return emit;
}
-void EXPORT_FUN(free)(emit_t *emit) {
+void EXPORT_FUN(free)(emit_t * emit) {
mp_asm_base_deinit(&emit->as->base, false);
m_del_obj(ASM_T, emit->as);
m_del(vtype_kind_t, emit->local_vtype, emit->local_vtype_alloc);
@@ -188,15 +198,33 @@ STATIC void emit_native_set_native_type(emit_t *emit, mp_uint_t op, mp_uint_t ar
default: {
vtype_kind_t type;
switch (arg2) {
- case MP_QSTR_object: type = VTYPE_PYOBJ; break;
- case MP_QSTR_bool: type = VTYPE_BOOL; break;
- case MP_QSTR_int: type = VTYPE_INT; break;
- case MP_QSTR_uint: type = VTYPE_UINT; break;
- case MP_QSTR_ptr: type = VTYPE_PTR; break;
- case MP_QSTR_ptr8: type = VTYPE_PTR8; break;
- case MP_QSTR_ptr16: type = VTYPE_PTR16; break;
- case MP_QSTR_ptr32: type = VTYPE_PTR32; break;
- default: EMIT_NATIVE_VIPER_TYPE_ERROR(emit, translate("unknown type '%q'"), arg2); return;
+ case MP_QSTR_object:
+ type = VTYPE_PYOBJ;
+ break;
+ case MP_QSTR_bool:
+ type = VTYPE_BOOL;
+ break;
+ case MP_QSTR_int:
+ type = VTYPE_INT;
+ break;
+ case MP_QSTR_uint:
+ type = VTYPE_UINT;
+ break;
+ case MP_QSTR_ptr:
+ type = VTYPE_PTR;
+ break;
+ case MP_QSTR_ptr8:
+ type = VTYPE_PTR8;
+ break;
+ case MP_QSTR_ptr16:
+ type = VTYPE_PTR16;
+ break;
+ case MP_QSTR_ptr32:
+ type = VTYPE_PTR32;
+ break;
+ default:
+ EMIT_NATIVE_VIPER_TYPE_ERROR(emit, translate("unknown type '%q'"), arg2);
+ return;
}
if (op == MP_EMIT_NATIVE_TYPE_RETURN) {
emit->return_vtype = type;
@@ -463,7 +491,7 @@ STATIC void emit_native_end_pass(emit_t *emit) {
#pragma GCC diagnostic ignored "-Wcast-align"
mp_emit_glue_assign_native(emit->scope->raw_code,
emit->do_viper_types ? MP_CODE_NATIVE_VIPER : MP_CODE_NATIVE_PY,
- f, f_len, (mp_uint_t*)((byte*)f + emit->const_table_offset),
+ f, f_len, (mp_uint_t *)((byte *)f + emit->const_table_offset),
emit->scope->num_pos_args, emit->scope->scope_flags, type_sig);
#pragma GCC diagnostic pop
}
@@ -479,14 +507,14 @@ STATIC void adjust_stack(emit_t *emit, mp_int_t stack_size_delta) {
if (emit->pass > MP_PASS_SCOPE && emit->stack_size > emit->scope->stack_size) {
emit->scope->stack_size = emit->stack_size;
}
-#ifdef DEBUG_PRINT
+ #ifdef DEBUG_PRINT
DEBUG_printf(" adjust_stack; stack_size=%d+%d; stack now:", emit->stack_size - stack_size_delta, stack_size_delta);
for (int i = 0; i < emit->stack_size; i++) {
stack_info_t *si = &emit->stack_info[i];
DEBUG_printf(" (v=%d k=%d %d)", si->vtype, si->kind, si->data.u_reg);
}
DEBUG_printf("\n");
-#endif
+ #endif
}
STATIC void emit_native_adjust_stack_size(emit_t *emit, mp_int_t delta) {
@@ -875,22 +903,40 @@ STATIC void emit_native_load_const_tok(emit_t *emit, mp_token_kind_t tok) {
mp_uint_t val;
if (emit->do_viper_types) {
switch (tok) {
- case MP_TOKEN_KW_NONE: vtype = VTYPE_PTR_NONE; val = 0; break;
- case MP_TOKEN_KW_FALSE: vtype = VTYPE_BOOL; val = 0; break;
- case MP_TOKEN_KW_TRUE: vtype = VTYPE_BOOL; val = 1; break;
+ case MP_TOKEN_KW_NONE:
+ vtype = VTYPE_PTR_NONE;
+ val = 0;
+ break;
+ case MP_TOKEN_KW_FALSE:
+ vtype = VTYPE_BOOL;
+ val = 0;
+ break;
+ case MP_TOKEN_KW_TRUE:
+ vtype = VTYPE_BOOL;
+ val = 1;
+ break;
default:
assert(tok == MP_TOKEN_ELLIPSIS);
- vtype = VTYPE_PYOBJ; val = (mp_uint_t)&mp_const_ellipsis_obj; break;
+ vtype = VTYPE_PYOBJ;
+ val = (mp_uint_t)&mp_const_ellipsis_obj;
+ break;
}
} else {
vtype = VTYPE_PYOBJ;
switch (tok) {
- case MP_TOKEN_KW_NONE: val = (mp_uint_t)mp_const_none; break;
- case MP_TOKEN_KW_FALSE: val = (mp_uint_t)mp_const_false; break;
- case MP_TOKEN_KW_TRUE: val = (mp_uint_t)mp_const_true; break;
+ case MP_TOKEN_KW_NONE:
+ val = (mp_uint_t)mp_const_none;
+ break;
+ case MP_TOKEN_KW_FALSE:
+ val = (mp_uint_t)mp_const_false;
+ break;
+ case MP_TOKEN_KW_TRUE:
+ val = (mp_uint_t)mp_const_true;
+ break;
default:
assert(tok == MP_TOKEN_ELLIPSIS);
- val = (mp_uint_t)&mp_const_ellipsis_obj; break;
+ val = (mp_uint_t)&mp_const_ellipsis_obj;
+ break;
}
}
emit_post_push_imm(emit, vtype, val);
@@ -1939,7 +1985,7 @@ STATIC void emit_native_binary_op(emit_t *emit, mp_binary_op_t op) {
asm_xtensa_setcc_reg_reg_reg(emit->as, cc & ~0x80, REG_RET, reg_rhs, REG_ARG_2);
}
#else
- #error not implemented
+ #error not implemented
#endif
emit_post_push_reg(emit, VTYPE_BOOL, REG_RET);
} else {
diff --git a/py/enum.c b/py/enum.c
index 02a85a168..8dc83a9fb 100644
--- a/py/enum.c
+++ b/py/enum.c
@@ -29,7 +29,7 @@
mp_obj_t cp_enum_find(const mp_obj_type_t *type, int value) {
const mp_obj_dict_t *dict = type->locals_dict;
- for (size_t i=0; i<dict->map.used; i++) {
+ for (size_t i = 0; i < dict->map.used; i++) {
const cp_enum_obj_t *v = dict->map.table[i].value;
if (v->value == value) {
return (mp_obj_t)v;
@@ -42,11 +42,11 @@ int cp_enum_value(const mp_obj_type_t *type, mp_obj_t *obj) {
if (!MP_OBJ_IS_TYPE(obj, type)) {
mp_raise_TypeError_varg(translate("Expected a %q"), type->name);
}
- return ((cp_enum_obj_t*)MP_OBJ_TO_PTR(obj))->value;
+ return ((cp_enum_obj_t *)MP_OBJ_TO_PTR(obj))->value;
}
void cp_enum_obj_print_helper(uint16_t module, const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) {
- (void) kind;
+ (void)kind;
cp_enum_obj_t *self = self_in;
mp_printf(print, "%q.%q.%q", module, self->base.type->name, self->name);
}
diff --git a/py/enum.h b/py/enum.h
index 708678eb6..286bac098 100644
--- a/py/enum.h
+++ b/py/enum.h
@@ -35,27 +35,27 @@ typedef struct {
} cp_enum_obj_t;
#define MAKE_ENUM_VALUE(type, prefix, name, value) \
- const cp_enum_obj_t prefix ## _ ## name ## _obj = { \
- { &type }, value, MP_QSTR_ ## name, \
+ const cp_enum_obj_t prefix##_##name##_obj = { \
+ { &type }, value, MP_QSTR_##name, \
}
#define MAKE_ENUM_MAP(name) \
- const mp_rom_map_elem_t name ## _locals_table[] =
+ const mp_rom_map_elem_t name##_locals_table[] =
#define MAKE_ENUM_MAP_ENTRY(prefix, name) \
- { MP_ROM_QSTR(MP_QSTR_ ## name), MP_ROM_PTR(&prefix ## _ ## name ## _obj) }
+ { MP_ROM_QSTR(MP_QSTR_##name), MP_ROM_PTR(&prefix##_##name##_obj) }
#define MAKE_PRINTER(module, typename) \
- STATIC void typename ## _ ## print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) { \
- cp_enum_obj_print_helper(MP_QSTR_ ## module, print, self_in, kind); \
+ STATIC void typename##_##print(const mp_print_t * print, mp_obj_t self_in, mp_print_kind_t kind) { \
+ cp_enum_obj_print_helper(MP_QSTR_##module, print, self_in, kind); \
}
#define MAKE_ENUM_TYPE(module, type, typename) \
- const mp_obj_type_t typename ## _type = { \
+ const mp_obj_type_t typename##_type = { \
{ &mp_type_type }, \
- .name = MP_QSTR_ ## type, \
- .print = typename ## _print, \
- .locals_dict = (mp_obj_t)&typename ## _locals_dict, \
+ .name = MP_QSTR_##type, \
+ .print = typename##_print, \
+ .locals_dict = (mp_obj_t)&typename##_locals_dict, \
}
diff --git a/py/formatfloat.c b/py/formatfloat.c
index 166a98a2e..f8d06d2d7 100644
--- a/py/formatfloat.c
+++ b/py/formatfloat.c
@@ -68,11 +68,20 @@ union floatbits {
float f;
uint32_t u;
};
-static inline int fp_signbit(float x) { union floatbits fb = {x}; return fb.u & FLT_SIGN_MASK; }
+static inline int fp_signbit(float x) {
+ union floatbits fb = {x};
+ return fb.u & FLT_SIGN_MASK;
+}
#define fp_isnan(x) isnan(x)
#define fp_isinf(x) isinf(x)
-static inline int fp_iszero(float x) { union floatbits fb = {x}; return fb.u == 0; }
-static inline int fp_isless1(float x) { union floatbits fb = {x}; return fb.u < 0x3f800000; }
+static inline int fp_iszero(float x) {
+ union floatbits fb = {x};
+ return fb.u == 0;
+}
+static inline int fp_isless1(float x) {
+ union floatbits fb = {x};
+ return fb.u < 0x3f800000;
+}
#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
@@ -282,7 +291,7 @@ int mp_format_float(FPTYPE f, char *buf, size_t buf_size, char fmt, int prec, ch
if (fmt == 'e' && prec > (buf_remaining - FPMIN_BUF_SIZE)) {
prec = buf_remaining - FPMIN_BUF_SIZE;
}
- if (fmt == 'g'){
+ if (fmt == 'g') {
// Truncate precision to prevent buffer overflow
if (prec + (FPMIN_BUF_SIZE - 1) > buf_remaining) {
prec = buf_remaining - (FPMIN_BUF_SIZE - 1);
diff --git a/py/frozenmod.c b/py/frozenmod.c
index 0e040a44f..6f8191d31 100644
--- a/py/frozenmod.c
+++ b/py/frozenmod.c
@@ -157,7 +157,7 @@ int mp_find_frozen_module(const char *str, size_t len, void **data) {
#if MICROPY_MODULE_FROZEN_MPY
const mp_raw_code_t *rc = mp_find_frozen_mpy(str, len);
if (rc != NULL) {
- *data = (void*)rc;
+ *data = (void *)rc;
return MP_FROZEN_MPY;
}
#endif
diff --git a/py/frozenmod.h b/py/frozenmod.h
index 3ba1b590d..668b7ac17 100644
--- a/py/frozenmod.h
+++ b/py/frozenmod.h
@@ -36,10 +36,10 @@ enum {
// Frozen modules are in a pseudo-directory, so sys.path can control how they're found.
#define MP_FROZEN_FAKE_DIR ".frozen"
-#define MP_FROZEN_FAKE_DIR_LENGTH (sizeof(MP_FROZEN_FAKE_DIR)-1)
+#define MP_FROZEN_FAKE_DIR_LENGTH (sizeof(MP_FROZEN_FAKE_DIR) - 1)
#define MP_FROZEN_FAKE_DIR_SLASH (MP_FROZEN_FAKE_DIR "/")
-#define MP_FROZEN_FAKE_DIR_SLASH_LENGTH (sizeof(MP_FROZEN_FAKE_DIR_SLASH)-1)
+#define MP_FROZEN_FAKE_DIR_SLASH_LENGTH (sizeof(MP_FROZEN_FAKE_DIR_SLASH) - 1)
// This should match MP_FROZEN_FAKE_DIR.
#define MP_FROZEN_FAKE_DIR_QSTR MP_QSTR__dot_frozen
diff --git a/py/gc.c b/py/gc.c
index 2aa2668dc..cb7e45419 100755..100644
--- a/py/gc.c
+++ b/py/gc.c
@@ -78,7 +78,7 @@
#define ATB_HEAD_TO_MARK(block) do { MP_STATE_MEM(gc_alloc_table_start)[(block) / BLOCKS_PER_ATB] |= (AT_MARK << BLOCK_SHIFT(block)); } while (0)
#define ATB_MARK_TO_HEAD(block) do { MP_STATE_MEM(gc_alloc_table_start)[(block) / BLOCKS_PER_ATB] &= (~(AT_TAIL << BLOCK_SHIFT(block))); } while (0)
-#define BLOCK_FROM_PTR(ptr) (((byte*)(ptr) - MP_STATE_MEM(gc_pool_start)) / BYTES_PER_BLOCK)
+#define BLOCK_FROM_PTR(ptr) (((byte *)(ptr) - MP_STATE_MEM(gc_pool_start)) / BYTES_PER_BLOCK)
#define PTR_FROM_BLOCK(block) (((block) * BYTES_PER_BLOCK + (uintptr_t)MP_STATE_MEM(gc_pool_start)))
#define ATB_FROM_BLOCK(bl) ((bl) / BLOCKS_PER_ATB)
@@ -115,43 +115,43 @@ void __attribute__ ((noinline)) gc_log_change(uint32_t start_block, uint32_t len
// TODO waste less memory; currently requires that all entries in alloc_table have a corresponding block in pool
void gc_init(void *start, void *end) {
// align end pointer on block boundary
- end = (void*)((uintptr_t)end & (~(BYTES_PER_BLOCK - 1)));
- DEBUG_printf("Initializing GC heap: %p..%p = " UINT_FMT " bytes\n", start, end, (byte*)end - (byte*)start);
+ end = (void *)((uintptr_t)end & (~(BYTES_PER_BLOCK - 1)));
+ DEBUG_printf("Initializing GC heap: %p..%p = " UINT_FMT " bytes\n", start, end, (byte *)end - (byte *)start);
// calculate parameters for GC (T=total, A=alloc table, F=finaliser table, P=pool; all in bytes):
// T = A + F + P
// F = A * BLOCKS_PER_ATB / BLOCKS_PER_FTB
// P = A * BLOCKS_PER_ATB * BYTES_PER_BLOCK
// => T = A * (1 + BLOCKS_PER_ATB / BLOCKS_PER_FTB + BLOCKS_PER_ATB * BYTES_PER_BLOCK)
- size_t total_byte_len = (byte*)end - (byte*)start;
-#if MICROPY_ENABLE_FINALISER
+ size_t total_byte_len = (byte *)end - (byte *)start;
+ #if MICROPY_ENABLE_FINALISER
MP_STATE_MEM(gc_alloc_table_byte_len) = total_byte_len * BITS_PER_BYTE / (BITS_PER_BYTE + BITS_PER_BYTE * BLOCKS_PER_ATB / BLOCKS_PER_FTB + BITS_PER_BYTE * BLOCKS_PER_ATB * BYTES_PER_BLOCK);
-#else
+ #else
MP_STATE_MEM(gc_alloc_table_byte_len) = total_byte_len / (1 + BITS_PER_BYTE / 2 * BYTES_PER_BLOCK);
-#endif
+ #endif
- MP_STATE_MEM(gc_alloc_table_start) = (byte*)start;
+ MP_STATE_MEM(gc_alloc_table_start) = (byte *)start;
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
size_t gc_finaliser_table_byte_len = (MP_STATE_MEM(gc_alloc_table_byte_len) * BLOCKS_PER_ATB + BLOCKS_PER_FTB - 1) / BLOCKS_PER_FTB;
MP_STATE_MEM(gc_finaliser_table_start) = MP_STATE_MEM(gc_alloc_table_start) + MP_STATE_MEM(gc_alloc_table_byte_len);
-#endif
+ #endif
size_t gc_pool_block_len = MP_STATE_MEM(gc_alloc_table_byte_len) * BLOCKS_PER_ATB;
- MP_STATE_MEM(gc_pool_start) = (byte*)end - gc_pool_block_len * BYTES_PER_BLOCK;
+ MP_STATE_MEM(gc_pool_start) = (byte *)end - gc_pool_block_len * BYTES_PER_BLOCK;
MP_STATE_MEM(gc_pool_end) = end;
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
assert(MP_STATE_MEM(gc_pool_start) >= MP_STATE_MEM(gc_finaliser_table_start) + gc_finaliser_table_byte_len);
-#endif
+ #endif
// clear ATBs
memset(MP_STATE_MEM(gc_alloc_table_start), 0, MP_STATE_MEM(gc_alloc_table_byte_len));
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
// clear FTBs
memset(MP_STATE_MEM(gc_finaliser_table_start), 0, gc_finaliser_table_byte_len);
-#endif
+ #endif
// Set first free ATB index to the start of the heap.
for (size_t i = 0; i < MICROPY_ATB_INDICES; i++) {
@@ -163,7 +163,7 @@ void gc_init(void *start, void *end) {
// Set the lowest long lived ptr to the end of the heap to start. This will be lowered as long
// lived objects are allocated.
- MP_STATE_MEM(gc_lowest_long_lived_ptr) = (void*) PTR_FROM_BLOCK(MP_STATE_MEM(gc_alloc_table_byte_len * BLOCKS_PER_ATB));
+ MP_STATE_MEM(gc_lowest_long_lived_ptr) = (void *)PTR_FROM_BLOCK(MP_STATE_MEM(gc_alloc_table_byte_len * BLOCKS_PER_ATB));
// unlock the GC
MP_STATE_MEM(gc_lock_depth) = 0;
@@ -185,9 +185,9 @@ void gc_init(void *start, void *end) {
DEBUG_printf("GC layout:\n");
DEBUG_printf(" alloc table at %p, length " UINT_FMT " bytes, " UINT_FMT " blocks\n", MP_STATE_MEM(gc_alloc_table_start), MP_STATE_MEM(gc_alloc_table_byte_len), MP_STATE_MEM(gc_alloc_table_byte_len) * BLOCKS_PER_ATB);
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
DEBUG_printf(" finaliser table at %p, length " UINT_FMT " bytes, " UINT_FMT " blocks\n", MP_STATE_MEM(gc_finaliser_table_start), gc_finaliser_table_byte_len, gc_finaliser_table_byte_len * BLOCKS_PER_FTB);
-#endif
+ #endif
DEBUG_printf(" pool at %p, length " UINT_FMT " bytes, " UINT_FMT " blocks\n", MP_STATE_MEM(gc_pool_start), gc_pool_block_len * BYTES_PER_BLOCK, gc_pool_block_len);
}
@@ -237,8 +237,8 @@ STATIC void gc_mark_subtree(size_t block) {
} while (ATB_GET_KIND(block + n_blocks) == AT_TAIL);
// check this block's children
- void **ptrs = (void**)PTR_FROM_BLOCK(block);
- for (size_t i = n_blocks * BYTES_PER_BLOCK / sizeof(void*); i > 0; i--, ptrs++) {
+ void **ptrs = (void **)PTR_FROM_BLOCK(block);
+ for (size_t i = n_blocks * BYTES_PER_BLOCK / sizeof(void *); i > 0; i--, ptrs++) {
void *ptr = *ptrs;
if (VERIFY_PTR(ptr)) {
// Mark and push this pointer
@@ -289,9 +289,9 @@ STATIC void gc_sweep(void) {
for (size_t block = 0; block < MP_STATE_MEM(gc_alloc_table_byte_len) * BLOCKS_PER_ATB; block++) {
switch (ATB_GET_KIND(block)) {
case AT_HEAD:
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
if (FTB_GET(block)) {
- mp_obj_base_t *obj = (mp_obj_base_t*)PTR_FROM_BLOCK(block);
+ mp_obj_base_t *obj = (mp_obj_base_t *)PTR_FROM_BLOCK(block);
if (obj->type != NULL) {
// if the object has a type then see if it has a __del__ method
mp_obj_t dest[2];
@@ -310,11 +310,11 @@ STATIC void gc_sweep(void) {
// clear finaliser flag
FTB_CLEAR(block);
}
-#endif
+ #endif
free_tail = 1;
ATB_ANY_TO_FREE(block);
#if CLEAR_ON_SWEEP
- memset((void*)PTR_FROM_BLOCK(block), 0, BYTES_PER_BLOCK);
+ memset((void *)PTR_FROM_BLOCK(block), 0, BYTES_PER_BLOCK);
#endif
DEBUG_printf("gc_sweep(%x)\n", PTR_FROM_BLOCK(block));
@@ -330,7 +330,7 @@ STATIC void gc_sweep(void) {
if (free_tail) {
ATB_ANY_TO_FREE(block);
#if CLEAR_ON_SWEEP
- memset((void*)PTR_FROM_BLOCK(block), 0, BYTES_PER_BLOCK);
+ memset((void *)PTR_FROM_BLOCK(block), 0, BYTES_PER_BLOCK);
#endif
}
break;
@@ -344,7 +344,7 @@ STATIC void gc_sweep(void) {
}
// Mark can handle NULL pointers because it verifies the pointer is within the heap bounds.
-STATIC void gc_mark(void* ptr) {
+STATIC void gc_mark(void *ptr) {
if (VERIFY_PTR(ptr)) {
size_t block = BLOCK_FROM_PTR(ptr);
if (ATB_GET_KIND(block) == AT_HEAD) {
@@ -367,17 +367,17 @@ void gc_collect_start(void) {
// Trace root pointers. This relies on the root pointers being organised
// correctly in the mp_state_ctx structure. We scan nlr_top, dict_locals,
// dict_globals, then the root pointer section of mp_state_vm.
- void **ptrs = (void**)(void*)&mp_state_ctx;
+ void **ptrs = (void **)(void *)&mp_state_ctx;
size_t root_start = offsetof(mp_state_ctx_t, thread.dict_locals);
size_t root_end = offsetof(mp_state_ctx_t, vm.qstr_last_chunk);
- gc_collect_root(ptrs + root_start / sizeof(void*), (root_end - root_start) / sizeof(void*));
+ gc_collect_root(ptrs + root_start / sizeof(void *), (root_end - root_start) / sizeof(void *));
gc_mark(MP_STATE_MEM(permanent_pointers));
#if MICROPY_ENABLE_PYSTACK
// Trace root pointers from the Python stack.
- ptrs = (void**)(void*)MP_STATE_THREAD(pystack_start);
- gc_collect_root(ptrs, (MP_STATE_THREAD(pystack_cur) - MP_STATE_THREAD(pystack_start)) / sizeof(void*));
+ ptrs = (void **)(void *)MP_STATE_THREAD(pystack_start);
+ gc_collect_root(ptrs, (MP_STATE_THREAD(pystack_cur) - MP_STATE_THREAD(pystack_start)) / sizeof(void *));
#endif
}
@@ -549,7 +549,7 @@ void *gc_alloc(size_t n_bytes, bool has_finaliser, bool long_lived) {
if (!collected) {
size_t block = i * BLOCKS_PER_ATB + j;
if ((direction == 1 && block >= crossover_block) ||
- (direction == -1 && block < crossover_block)) {
+ (direction == -1 && block < crossover_block)) {
keep_looking = false;
}
}
@@ -612,7 +612,7 @@ void *gc_alloc(size_t n_bytes, bool has_finaliser, bool long_lived) {
// get pointer to first block
// we must create this pointer before unlocking the GC so a collection can find it
- void *ret_ptr = (void*)(MP_STATE_MEM(gc_pool_start) + start_block * BYTES_PER_BLOCK);
+ void *ret_ptr = (void *)(MP_STATE_MEM(gc_pool_start) + start_block * BYTES_PER_BLOCK);
DEBUG_printf("gc_alloc(%p)\n", ret_ptr);
// If the allocation was long live then update the lowest value. Its used to trigger early
@@ -630,20 +630,20 @@ void *gc_alloc(size_t n_bytes, bool has_finaliser, bool long_lived) {
#if MICROPY_GC_CONSERVATIVE_CLEAR
// be conservative and zero out all the newly allocated blocks
- memset((byte*)ret_ptr, 0, (end_block - start_block + 1) * BYTES_PER_BLOCK);
+ memset((byte *)ret_ptr, 0, (end_block - start_block + 1) * BYTES_PER_BLOCK);
#else
// zero out the additional bytes of the newly allocated blocks
// This is needed because the blocks may have previously held pointers
// to the heap and will not be set to something else if the caller
// doesn't actually use the entire block. As such they will continue
// to point to the heap and may prevent other blocks from being reclaimed.
- memset((byte*)ret_ptr + n_bytes, 0, (end_block - start_block + 1) * BYTES_PER_BLOCK - n_bytes);
+ memset((byte *)ret_ptr + n_bytes, 0, (end_block - start_block + 1) * BYTES_PER_BLOCK - n_bytes);
#endif
#if MICROPY_ENABLE_FINALISER
if (has_finaliser) {
// clear type pointer in case it is never set
- ((mp_obj_base_t*)ret_ptr)->type = NULL;
+ ((mp_obj_base_t *)ret_ptr)->type = NULL;
// set mp_obj flag only if it has a finaliser
GC_ENTER();
FTB_SET(start_block);
@@ -754,7 +754,7 @@ size_t gc_nbytes(const void *ptr) {
}
bool gc_has_finaliser(const void *ptr) {
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
GC_ENTER();
if (VERIFY_PTR(ptr)) {
bool has_finaliser = FTB_GET(BLOCK_FROM_PTR(ptr));
@@ -764,9 +764,9 @@ bool gc_has_finaliser(const void *ptr) {
// invalid pointer
GC_EXIT();
-#else
- (void) ptr;
-#endif
+ #else
+ (void)ptr;
+ #endif
return false;
}
@@ -782,7 +782,7 @@ void *gc_make_long_lived(void *old_ptr) {
bool has_finaliser = gc_has_finaliser(old_ptr);
// Try and find a new area in the long lived section to copy the memory to.
- void* new_ptr = gc_alloc(n_bytes, has_finaliser, true);
+ void *new_ptr = gc_alloc(n_bytes, has_finaliser, true);
if (new_ptr == NULL) {
return old_ptr;
} else if (old_ptr > new_ptr) {
@@ -808,11 +808,11 @@ void *gc_realloc(void *ptr, mp_uint_t n_bytes) {
if (ptr == NULL) {
has_finaliser = false;
} else {
-#if MICROPY_ENABLE_FINALISER
+ #if MICROPY_ENABLE_FINALISER
has_finaliser = FTB_GET(BLOCK_FROM_PTR((mp_uint_t)ptr));
-#else
+ #else
has_finaliser = false;
-#endif
+ #endif
}
void *ptr2 = gc_alloc(n_bytes, has_finaliser);
if (ptr2 == NULL) {
@@ -861,7 +861,7 @@ void *gc_realloc(void *ptr_in, size_t n_bytes, bool allow_move) {
// free blocks to satisfy the realloc. Note that we need to compute the
// total size of the existing memory chunk so we can correctly and
// efficiently shrink it (see below for shrinking code).
- size_t n_free = 0;
+ size_t n_free = 0;
size_t n_blocks = 1; // counting HEAD block
size_t max_block = MP_STATE_MEM(gc_alloc_table_byte_len) * BLOCKS_PER_ATB;
for (size_t bl = block + n_blocks; bl < max_block; bl++) {
@@ -933,10 +933,10 @@ void *gc_realloc(void *ptr_in, size_t n_bytes, bool allow_move) {
#if MICROPY_GC_CONSERVATIVE_CLEAR
// be conservative and zero out all the newly allocated blocks
- memset((byte*)ptr_in + n_blocks * BYTES_PER_BLOCK, 0, (new_blocks - n_blocks) * BYTES_PER_BLOCK);
+ memset((byte *)ptr_in + n_blocks * BYTES_PER_BLOCK, 0, (new_blocks - n_blocks) * BYTES_PER_BLOCK);
#else
// zero out the additional bytes of the newly allocated blocks (see comment above in gc_alloc)
- memset((byte*)ptr_in + n_bytes, 0, new_blocks * BYTES_PER_BLOCK - n_bytes);
+ memset((byte *)ptr_in + n_bytes, 0, new_blocks * BYTES_PER_BLOCK - n_bytes);
#endif
#if EXTENSIVE_HEAP_PROFILING
@@ -989,9 +989,9 @@ bool gc_never_free(void *ptr) {
}
// Pointers are stored in a linked list where each block is BYTES_PER_BLOCK long and the first
// pointer is the next block of pointers.
- void ** current_reference_block = MP_STATE_MEM(permanent_pointers);
+ void **current_reference_block = MP_STATE_MEM(permanent_pointers);
while (current_reference_block != NULL) {
- for (size_t i = 1; i < BYTES_PER_BLOCK / sizeof(void*); i++) {
+ for (size_t i = 1; i < BYTES_PER_BLOCK / sizeof(void *); i++) {
if (current_reference_block[i] == NULL) {
current_reference_block[i] = ptr;
return true;
@@ -999,7 +999,7 @@ bool gc_never_free(void *ptr) {
}
current_reference_block = current_reference_block[0];
}
- void** next_block = gc_alloc(BYTES_PER_BLOCK, false, true);
+ void **next_block = gc_alloc(BYTES_PER_BLOCK, false, true);
if (next_block == NULL) {
return false;
}
@@ -1018,7 +1018,7 @@ void gc_dump_info(void) {
mp_printf(&mp_plat_print, "GC: total: %u, used: %u, free: %u\n",
(uint)info.total, (uint)info.used, (uint)info.free);
mp_printf(&mp_plat_print, " No. of 1-blocks: %u, 2-blocks: %u, max blk sz: %u, max free sz: %u\n",
- (uint)info.num_1block, (uint)info.num_2block, (uint)info.max_block, (uint)info.max_free);
+ (uint)info.num_1block, (uint)info.num_2block, (uint)info.max_block, (uint)info.max_free);
}
void gc_dump_alloc_table(void) {
@@ -1050,12 +1050,14 @@ void gc_dump_alloc_table(void) {
}
// print header for new line of blocks
// (the cast to uint32_t is for 16-bit ports)
- //mp_printf(&mp_plat_print, "\n%05x: ", (uint)(PTR_FROM_BLOCK(bl) & (uint32_t)0xfffff));
+ // mp_printf(&mp_plat_print, "\n%05x: ", (uint)(PTR_FROM_BLOCK(bl) & (uint32_t)0xfffff));
mp_printf(&mp_plat_print, "\n%05x: ", (uint)((bl * BYTES_PER_BLOCK) & (uint32_t)0xfffff));
}
int c = ' ';
switch (ATB_GET_KIND(bl)) {
- case AT_FREE: c = '.'; break;
+ case AT_FREE:
+ c = '.';
+ break;
/* this prints out if the object is reachable from BSS or STACK (for unix only)
case AT_HEAD: {
c = 'h';
@@ -1084,38 +1086,51 @@ void gc_dump_alloc_table(void) {
*/
/* this prints the uPy object type of the head block */
case AT_HEAD: {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wcast-align"
- void **ptr = (void**)(MP_STATE_MEM(gc_pool_start) + bl * BYTES_PER_BLOCK);
-#pragma GCC diagnostic pop
- if (*ptr == &mp_type_tuple) { c = 'T'; }
- else if (*ptr == &mp_type_list) { c = 'L'; }
- else if (*ptr == &mp_type_dict) { c = 'D'; }
- else if (*ptr == &mp_type_str || *ptr == &mp_type_bytes) { c = 'S'; }
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wcast-align"
+ void **ptr = (void **)(MP_STATE_MEM(gc_pool_start) + bl * BYTES_PER_BLOCK);
+ #pragma GCC diagnostic pop
+ if (*ptr == &mp_type_tuple) {
+ c = 'T';
+ } else if (*ptr == &mp_type_list) {
+ c = 'L';
+ } else if (*ptr == &mp_type_dict) {
+ c = 'D';
+ } else if (*ptr == &mp_type_str || *ptr == &mp_type_bytes) {
+ c = 'S';
+ }
#if MICROPY_PY_BUILTINS_BYTEARRAY
- else if (*ptr == &mp_type_bytearray) { c = 'A'; }
+ else if (*ptr == &mp_type_bytearray) {
+ c = 'A';
+ }
#endif
#if MICROPY_PY_ARRAY
- else if (*ptr == &mp_type_array) { c = 'A'; }
+ else if (*ptr == &mp_type_array) {
+ c = 'A';
+ }
#endif
#if MICROPY_PY_BUILTINS_FLOAT
- else if (*ptr == &mp_type_float) { c = 'F'; }
+ else if (*ptr == &mp_type_float) {
+ c = 'F';
+ }
#endif
- else if (*ptr == &mp_type_fun_bc) { c = 'B'; }
- else if (*ptr == &mp_type_module) { c = 'M'; }
- else {
+ else if (*ptr == &mp_type_fun_bc) {
+ c = 'B';
+ } else if (*ptr == &mp_type_module) {
+ c = 'M';
+ } else {
c = 'h';
#if 0
// This code prints "Q" for qstr-pool data, and "q" for qstr-str
// data. It can be useful to see how qstrs are being allocated,
// but is disabled by default because it is very slow.
for (qstr_pool_t *pool = MP_STATE_VM(last_pool); c == 'h' && pool != NULL; pool = pool->prev) {
- if ((qstr_pool_t*)ptr == pool) {
+ if ((qstr_pool_t *)ptr == pool) {
c = 'Q';
break;
}
for (const byte **q = pool->qstrs, **q_top = pool->qstrs + pool->len; q < q_top; q++) {
- if ((const byte*)ptr == *q) {
+ if ((const byte *)ptr == *q) {
c = 'q';
break;
}
@@ -1125,8 +1140,12 @@ void gc_dump_alloc_table(void) {
}
break;
}
- case AT_TAIL: c = '='; break;
- case AT_MARK: c = 'm'; break;
+ case AT_TAIL:
+ c = '=';
+ break;
+ case AT_MARK:
+ c = 'm';
+ break;
}
mp_printf(&mp_plat_print, "%c", c);
}
@@ -1151,11 +1170,11 @@ void gc_test(void) {
p2[1] = p;
ptrs[0] = p2;
}
- for (int i = 0; i < 25; i+=2) {
+ for (int i = 0; i < 25; i += 2) {
mp_uint_t *p = gc_alloc(i, false);
printf("p=%p\n", p);
if (i & 3) {
- //ptrs[i] = p;
+ // ptrs[i] = p;
}
}
@@ -1163,7 +1182,7 @@ void gc_test(void) {
gc_dump_alloc_table();
printf("Starting GC...\n");
gc_collect_start();
- gc_collect_root(ptrs, sizeof(ptrs) / sizeof(void*));
+ gc_collect_root(ptrs, sizeof(ptrs) / sizeof(void *));
gc_collect_end();
printf("After GC:\n");
gc_dump_alloc_table();
diff --git a/py/gc.h b/py/gc.h
index b7c2889d5..ddbaeb40a 100644
--- a/py/gc.h
+++ b/py/gc.h
@@ -37,9 +37,9 @@
// ptr should be of type void*
#define VERIFY_PTR(ptr) ( \
- ((uintptr_t)(ptr) & (BYTES_PER_BLOCK - 1)) == 0 /* must be aligned on a block */ \
- && ptr >= (void*)MP_STATE_MEM(gc_pool_start) /* must be above start of pool */ \
- && ptr < (void*)MP_STATE_MEM(gc_pool_end) /* must be below end of pool */ \
+ ((uintptr_t)(ptr) & (BYTES_PER_BLOCK - 1)) == 0 /* must be aligned on a block */ \
+ && ptr >= (void *)MP_STATE_MEM(gc_pool_start) /* must be above start of pool */ \
+ && ptr < (void *)MP_STATE_MEM(gc_pool_end) /* must be below end of pool */ \
)
void gc_init(void *start, void *end);
diff --git a/py/gc_long_lived.c b/py/gc_long_lived.c
index 0e94390e9..8ee8a4a4e 100755..100644
--- a/py/gc_long_lived.c
+++ b/py/gc_long_lived.c
@@ -36,7 +36,7 @@ mp_obj_fun_bc_t *make_fun_bc_long_lived(mp_obj_fun_bc_t *fun_bc, uint8_t max_dep
if (fun_bc == NULL || fun_bc == mp_const_none || max_depth == 0) {
return fun_bc;
}
- fun_bc->bytecode = gc_make_long_lived((byte*) fun_bc->bytecode);
+ fun_bc->bytecode = gc_make_long_lived((byte *)fun_bc->bytecode);
fun_bc->globals = make_dict_long_lived(fun_bc->globals, max_depth - 1);
for (uint32_t i = 0; i < gc_nbytes(fun_bc->const_table) / sizeof(mp_obj_t); i++) {
// Skip things that aren't allocated on the heap (and hence have zero bytes.)
@@ -44,18 +44,18 @@ mp_obj_fun_bc_t *make_fun_bc_long_lived(mp_obj_fun_bc_t *fun_bc, uint8_t max_dep
continue;
}
// Try to detect raw code.
- mp_raw_code_t* raw_code = MP_OBJ_TO_PTR(fun_bc->const_table[i]);
+ mp_raw_code_t *raw_code = MP_OBJ_TO_PTR(fun_bc->const_table[i]);
if (raw_code->kind == MP_CODE_BYTECODE) {
- raw_code->data.u_byte.bytecode = gc_make_long_lived((byte*) raw_code->data.u_byte.bytecode);
- raw_code->data.u_byte.const_table = gc_make_long_lived((byte*) raw_code->data.u_byte.const_table);
+ raw_code->data.u_byte.bytecode = gc_make_long_lived((byte *)raw_code->data.u_byte.bytecode);
+ raw_code->data.u_byte.const_table = gc_make_long_lived((byte *)raw_code->data.u_byte.const_table);
}
- ((mp_uint_t *) fun_bc->const_table)[i] = (mp_uint_t) make_obj_long_lived(
- (mp_obj_t) fun_bc->const_table[i], max_depth - 1);
+ ((mp_uint_t *)fun_bc->const_table)[i] = (mp_uint_t)make_obj_long_lived(
+ (mp_obj_t)fun_bc->const_table[i], max_depth - 1);
}
- fun_bc->const_table = gc_make_long_lived((mp_uint_t*) fun_bc->const_table);
+ fun_bc->const_table = gc_make_long_lived((mp_uint_t *)fun_bc->const_table);
// extra_args stores keyword only argument default values.
- size_t words = gc_nbytes(fun_bc) / sizeof(mp_uint_t*);
+ size_t words = gc_nbytes(fun_bc) / sizeof(mp_uint_t *);
// Functions (mp_obj_fun_bc_t) have four pointers (base, globals, bytecode and const_table)
// before the variable length extra_args so remove them from the length.
for (size_t i = 0; i < words - 4; i++) {
@@ -79,9 +79,9 @@ mp_obj_property_t *make_property_long_lived(mp_obj_property_t *prop, uint8_t max
if (max_depth == 0) {
return prop;
}
- prop->proxy[0] = make_obj_long_lived((mp_obj_fun_bc_t*) prop->proxy[0], max_depth - 1);
- prop->proxy[1] = make_obj_long_lived((mp_obj_fun_bc_t*) prop->proxy[1], max_depth - 1);
- prop->proxy[2] = make_obj_long_lived((mp_obj_fun_bc_t*) prop->proxy[2], max_depth - 1);
+ prop->proxy[0] = make_obj_long_lived((mp_obj_fun_bc_t *)prop->proxy[0], max_depth - 1);
+ prop->proxy[1] = make_obj_long_lived((mp_obj_fun_bc_t *)prop->proxy[1], max_depth - 1);
+ prop->proxy[2] = make_obj_long_lived((mp_obj_fun_bc_t *)prop->proxy[2], max_depth - 1);
return gc_make_long_lived(prop);
}
@@ -115,11 +115,11 @@ mp_obj_dict_t *make_dict_long_lived(mp_obj_dict_t *dict, uint8_t max_depth) {
}
mp_obj_str_t *make_str_long_lived(mp_obj_str_t *str) {
- str->data = gc_make_long_lived((byte *) str->data);
+ str->data = gc_make_long_lived((byte *)str->data);
return gc_make_long_lived(str);
}
-mp_obj_t make_obj_long_lived(mp_obj_t obj, uint8_t max_depth){
+mp_obj_t make_obj_long_lived(mp_obj_t obj, uint8_t max_depth) {
#ifndef MICROPY_ENABLE_GC
return obj;
#endif
diff --git a/py/genlast.py b/py/genlast.py
index 5b195d23e..a3ac87128 100644
--- a/py/genlast.py
+++ b/py/genlast.py
@@ -12,8 +12,9 @@ import subprocess
from makeqstrdefs import qstr_unescape, QSTRING_BLACK_LIST
re_line = re.compile(r"#[line]*\s(\d+)\s\"([^\"]+)\"", re.DOTALL)
-re_qstr = re.compile(r'MP_QSTR_[_a-zA-Z0-9]+', re.DOTALL)
-re_translate = re.compile(r'translate\(\"((?:(?=(\\?))\2.)*?)\"\)', re.DOTALL)
+re_qstr = re.compile(r"MP_QSTR_[_a-zA-Z0-9]+", re.DOTALL)
+re_translate = re.compile(r"translate\(\"((?:(?=(\\?))\2.)*?)\"\)", re.DOTALL)
+
def write_out(fname, output_dir, output):
if output:
@@ -22,13 +23,14 @@ def write_out(fname, output_dir, output):
with open(output_dir + "/" + fname + ".qstr", "w") as f:
f.write("\n".join(output) + "\n")
+
def process_file(fname, output_dir, content):
- content = content.decode('utf-8', errors='ignore')
+ content = content.decode("utf-8", errors="ignore")
output = []
for match in re_qstr.findall(content):
- name = match.replace('MP_QSTR_', '')
+ name = match.replace("MP_QSTR_", "")
if name not in QSTRING_BLACK_LIST:
- output.append('Q(' + qstr_unescape(name) + ')')
+ output.append("Q(" + qstr_unescape(name) + ")")
for match in re_translate.findall(content):
output.append('TRANSLATE("' + match[0] + '")')
@@ -36,9 +38,10 @@ def process_file(fname, output_dir, content):
def checkoutput1(args):
- info = subprocess.run(args, check=True, stdout=subprocess.PIPE, input='')
+ info = subprocess.run(args, check=True, stdout=subprocess.PIPE, input="")
return info.stdout
+
def preprocess(command, output_dir, fn):
try:
output = checkoutput1(command + [fn])
@@ -46,27 +49,28 @@ def preprocess(command, output_dir, fn):
except Exception as e:
print(e, file=sys.stderr)
+
def maybe_preprocess(command, output_dir, fn):
# Preprocess the source file if it contains "MP_QSTR", "translate",
# or if it uses enum.h (which generates "MP_QSTR" strings.
if subprocess.call(["grep", "-lqE", r"(MP_QSTR|translate|enum\.h)", fn]) == 0:
preprocess(command, output_dir, fn)
-if __name__ == '__main__':
+if __name__ == "__main__":
- idx1 = sys.argv.index('--')
- idx2 = sys.argv.index('--', idx1+1)
+ idx1 = sys.argv.index("--")
+ idx2 = sys.argv.index("--", idx1 + 1)
output_dir = sys.argv[1]
check = sys.argv[2:idx1]
- always = sys.argv[idx1+1:idx2]
- command = sys.argv[idx2+1:]
+ always = sys.argv[idx1 + 1 : idx2]
+ command = sys.argv[idx2 + 1 :]
if not os.path.isdir(output_dir):
os.makedirs(output_dir)
# Mac and Windows use 'spawn'. Uncomment this during testing to catch spawn-specific problems on Linux.
- #multiprocessing.set_start_method("spawn")
+ # multiprocessing.set_start_method("spawn")
executor = ProcessPoolExecutor(max_workers=multiprocessing.cpu_count() + 1)
executor.map(maybe_preprocess, itertools.repeat(command), itertools.repeat(output_dir), check)
executor.map(preprocess, itertools.repeat(command), itertools.repeat(output_dir), always)
diff --git a/py/lexer.c b/py/lexer.c
index de121f87a..834a8d62e 100644
--- a/py/lexer.c
+++ b/py/lexer.c
@@ -113,15 +113,15 @@ STATIC bool is_following_odigit(mp_lexer_t *lex) {
STATIC bool is_string_or_bytes(mp_lexer_t *lex) {
return is_char_or(lex, '\'', '\"')
-#if MICROPY_COMP_FSTRING_LITERAL
- || (is_char_or4(lex, 'r', 'u', 'b', 'f') && is_char_following_or(lex, '\'', '\"'))
- || ((is_char_and(lex, 'r', 'f') || is_char_and(lex, 'f', 'r'))
- && is_char_following_following_or(lex, '\'', '\"'))
-#else
- || (is_char_or3(lex, 'r', 'u', 'b') && is_char_following_or(lex, '\'', '\"'))
-#endif
- || ((is_char_and(lex, 'r', 'b') || is_char_and(lex, 'b', 'r'))
- && is_char_following_following_or(lex, '\'', '\"'));
+ #if MICROPY_COMP_FSTRING_LITERAL
+ || (is_char_or4(lex, 'r', 'u', 'b', 'f') && is_char_following_or(lex, '\'', '\"'))
+ || ((is_char_and(lex, 'r', 'f') || is_char_and(lex, 'f', 'r'))
+ && is_char_following_following_or(lex, '\'', '\"'))
+ #else
+ || (is_char_or3(lex, 'r', 'u', 'b') && is_char_following_or(lex, '\'', '\"'))
+ #endif
+ || ((is_char_and(lex, 'r', 'b') || is_char_and(lex, 'b', 'r'))
+ && is_char_following_following_or(lex, '\'', '\"'));
}
// to easily parse utf-8 identifiers we allow any raw byte with high bit set
@@ -174,7 +174,7 @@ STATIC void next_char(mp_lexer_t *lex) {
lex->chr0 = lex->chr1;
lex->chr1 = lex->chr2;
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (lex->vstr_postfix_processing) {
if (lex->vstr_postfix_idx == lex->vstr_postfix.len) {
lex->chr2 = '\0';
@@ -182,7 +182,7 @@ STATIC void next_char(mp_lexer_t *lex) {
lex->chr2 = lex->vstr_postfix.buf[lex->vstr_postfix_idx++];
}
} else
-#endif
+ #endif
{
lex->chr2 = lex->reader.readbyte(lex->reader.data);
}
@@ -201,12 +201,12 @@ STATIC void next_char(mp_lexer_t *lex) {
lex->chr2 = '\n';
}
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (lex->vstr_postfix_processing && lex->chr0 == '\0') {
lex->vstr_postfix_processing = false;
swap_char_banks(lex);
}
-#endif
+ #endif
}
STATIC void indent_push(mp_lexer_t *lex, size_t indent) {
@@ -347,10 +347,10 @@ STATIC void parse_string_literal(mp_lexer_t *lex, bool is_raw, bool is_fstring)
}
size_t n_closing = 0;
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
bool in_expression = false;
bool expression_eat = true;
-#endif
+ #endif
while (!is_end(lex) && (num_quotes > 1 || !is_char(lex, '\n')) && n_closing < num_quotes) {
if (is_char(lex, quote_char)) {
@@ -358,7 +358,7 @@ STATIC void parse_string_literal(mp_lexer_t *lex, bool is_raw, bool is_fstring)
vstr_add_char(&lex->vstr, CUR_CHAR(lex));
} else {
n_closing = 0;
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (is_fstring && is_char(lex, '{')) {
vstr_add_char(&lex->vstr, CUR_CHAR(lex));
in_expression = !in_expression;
@@ -406,7 +406,7 @@ STATIC void parse_string_literal(mp_lexer_t *lex, bool is_raw, bool is_fstring)
next_char(lex);
continue;
}
-#endif
+ #endif
if (is_char(lex, '\\')) {
next_char(lex);
@@ -419,17 +419,36 @@ STATIC void parse_string_literal(mp_lexer_t *lex, bool is_raw, bool is_fstring)
switch (c) {
// note: "c" can never be MP_LEXER_EOF because next_char
// always inserts a newline at the end of the input stream
- case '\n': c = MP_LEXER_EOF; break; // backslash escape the newline, just ignore it
- case '\\': break;
- case '\'': break;
- case '"': break;
- case 'a': c = 0x07; break;
- case 'b': c = 0x08; break;
- case 't': c = 0x09; break;
- case 'n': c = 0x0a; break;
- case 'v': c = 0x0b; break;
- case 'f': c = 0x0c; break;
- case 'r': c = 0x0d; break;
+ case '\n':
+ c = MP_LEXER_EOF;
+ break; // backslash escape the newline, just ignore it
+ case '\\':
+ break;
+ case '\'':
+ break;
+ case '"':
+ break;
+ case 'a':
+ c = 0x07;
+ break;
+ case 'b':
+ c = 0x08;
+ break;
+ case 't':
+ c = 0x09;
+ break;
+ case 'n':
+ c = 0x0a;
+ break;
+ case 'v':
+ c = 0x0b;
+ break;
+ case 'f':
+ c = 0x0c;
+ break;
+ case 'r':
+ c = 0x0d;
+ break;
case 'u':
case 'U':
if (lex->tok_kind == MP_TOKEN_BYTES) {
@@ -437,9 +456,8 @@ STATIC void parse_string_literal(mp_lexer_t *lex, bool is_raw, bool is_fstring)
vstr_add_char(&lex->vstr, '\\');
break;
}
- // Otherwise fall through.
- case 'x':
- {
+ // Otherwise fall through.
+ case 'x': {
mp_uint_t num = 0;
if (!get_hex(lex, (c == 'x' ? 2 : c == 'u' ? 4 : 8), &num)) {
// not enough hex chars for escape sequence
@@ -542,14 +560,14 @@ STATIC bool skip_whitespace(mp_lexer_t *lex, bool stop_at_newline) {
}
void mp_lexer_to_next(mp_lexer_t *lex) {
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (lex->vstr_postfix.len && !lex->vstr_postfix_processing) {
// end format call injection
vstr_add_char(&lex->vstr_postfix, ')');
lex->vstr_postfix_processing = true;
swap_char_banks(lex);
}
-#endif
+ #endif
// start new token text
vstr_reset(&lex->vstr);
@@ -602,19 +620,19 @@ void mp_lexer_to_next(mp_lexer_t *lex) {
// MP_TOKEN_END is used to indicate that this is the first string token
lex->tok_kind = MP_TOKEN_END;
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
bool saw_normal = false, saw_fstring = false;
-#endif
+ #endif
// Loop to accumulate string/bytes literals
do {
// parse type codes
bool is_raw = false;
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
bool is_fstring = false;
-#else
+ #else
const bool is_fstring = false;
-#endif
+ #endif
mp_token_kind_t kind = MP_TOKEN_STRING;
int n_char = 0;
if (is_char(lex, 'u')) {
@@ -633,7 +651,7 @@ void mp_lexer_to_next(mp_lexer_t *lex) {
kind = MP_TOKEN_BYTES;
n_char = 2;
}
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (is_char_following(lex, 'f')) {
lex->tok_kind = MP_TOKEN_FSTRING_RAW;
break;
@@ -645,10 +663,10 @@ void mp_lexer_to_next(mp_lexer_t *lex) {
}
n_char = 1;
is_fstring = true;
-#endif
+ #endif
}
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
if (is_fstring) {
saw_fstring = true;
} else {
@@ -659,7 +677,7 @@ void mp_lexer_to_next(mp_lexer_t *lex) {
// Can't concatenate f-string with normal string
break;
}
-#endif
+ #endif
// Set or check token kind
if (lex->tok_kind == MP_TOKEN_END) {
@@ -837,9 +855,9 @@ mp_lexer_t *mp_lexer_new(qstr src_name, mp_reader_t reader) {
lex->num_indent_level = 1;
lex->indent_level = m_new(uint16_t, lex->alloc_indent_level);
vstr_init(&lex->vstr, 32);
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
vstr_init(&lex->vstr_postfix, 0);
-#endif
+ #endif
// store sentinel for first indentation level
lex->indent_level[0] = 0;
@@ -865,7 +883,7 @@ mp_lexer_t *mp_lexer_new(qstr src_name, mp_reader_t reader) {
mp_lexer_t *mp_lexer_new_from_str_len(qstr src_name, const char *str, size_t len, size_t free_len) {
mp_reader_t reader;
- mp_reader_new_mem(&reader, (const byte*)str, len, free_len);
+ mp_reader_new_mem(&reader, (const byte *)str, len, free_len);
return mp_lexer_new(src_name, reader);
}
diff --git a/py/lexer.h b/py/lexer.h
index 74195fe03..dab34294a 100644
--- a/py/lexer.h
+++ b/py/lexer.h
@@ -44,14 +44,14 @@ typedef enum _mp_token_kind_t {
MP_TOKEN_INVALID,
MP_TOKEN_DEDENT_MISMATCH,
MP_TOKEN_LONELY_STRING_OPEN,
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
MP_TOKEN_FSTRING_BACKSLASH,
MP_TOKEN_FSTRING_COMMENT,
MP_TOKEN_FSTRING_UNCLOSED,
MP_TOKEN_FSTRING_UNOPENED,
MP_TOKEN_FSTRING_EMPTY_EXP,
MP_TOKEN_FSTRING_RAW,
-#endif
+ #endif
MP_TOKEN_NEWLINE,
MP_TOKEN_INDENT,
@@ -158,9 +158,9 @@ typedef struct _mp_lexer_t {
mp_reader_t reader; // stream source
unichar chr0, chr1, chr2; // current cached characters from source
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
unichar chr3, chr4, chr5; // current cached characters from alt source
-#endif
+ #endif
size_t line; // current source line
size_t column; // current source column
@@ -176,11 +176,11 @@ typedef struct _mp_lexer_t {
size_t tok_column; // token source column
mp_token_kind_t tok_kind; // token kind
vstr_t vstr; // token data
-#if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_COMP_FSTRING_LITERAL
vstr_t vstr_postfix; // postfix to apply to string
bool vstr_postfix_processing;
uint16_t vstr_postfix_idx;
-#endif
+ #endif
} mp_lexer_t;
mp_lexer_t *mp_lexer_new(qstr src_name, mp_reader_t reader);
@@ -193,7 +193,7 @@ void mp_lexer_to_next(mp_lexer_t *lex);
// platform specific import function; must be implemented for a specific port
// TODO tidy up, rename, or put elsewhere
-//mp_lexer_t *mp_import_open_file(qstr mod_name);
+// mp_lexer_t *mp_import_open_file(qstr mod_name);
typedef enum {
MP_IMPORT_STAT_NO_EXIST,
diff --git a/py/makemoduledefs.py b/py/makemoduledefs.py
index 18d327f00..774560713 100644
--- a/py/makemoduledefs.py
+++ b/py/makemoduledefs.py
@@ -12,14 +12,11 @@ import os
import argparse
-pattern = re.compile(
- r"[\n;]\s*MP_REGISTER_MODULE\((.*?),\s*(.*?),\s*(.*?)\);",
- flags=re.DOTALL
-)
+pattern = re.compile(r"[\n;]\s*MP_REGISTER_MODULE\((.*?),\s*(.*?),\s*(.*?)\);", flags=re.DOTALL)
def find_c_file(obj_file, vpath):
- """ Search vpaths for the c file that matches the provided object_file.
+ """Search vpaths for the c file that matches the provided object_file.
:param str obj_file: object file to find the matching c file for
:param List[str] vpath: List of base paths, similar to gcc vpath
@@ -27,7 +24,7 @@ def find_c_file(obj_file, vpath):
"""
c_file = None
relative_c_file = os.path.splitext(obj_file)[0] + ".c"
- relative_c_file = relative_c_file.lstrip('/\\')
+ relative_c_file = relative_c_file.lstrip("/\\")
for p in vpath:
possible_c_file = os.path.join(p, relative_c_file)
if os.path.exists(possible_c_file):
@@ -38,7 +35,7 @@ def find_c_file(obj_file, vpath):
def find_module_registrations(c_file):
- """ Find any MP_REGISTER_MODULE definitions in the provided c file.
+ """Find any MP_REGISTER_MODULE definitions in the provided c file.
:param str c_file: path to c file to check
:return: List[(module_name, obj_module, enabled_define)]
@@ -54,7 +51,7 @@ def find_module_registrations(c_file):
def generate_module_table_header(modules):
- """ Generate header with module table entries for builtin modules.
+ """Generate header with module table entries for builtin modules.
:param List[(module_name, obj_module, enabled_define)] modules: module defs
:return: None
@@ -66,15 +63,20 @@ def generate_module_table_header(modules):
for module_name, obj_module, enabled_define in modules:
mod_def = "MODULE_DEF_{}".format(module_name.upper())
mod_defs.append(mod_def)
- print((
- "#if ({enabled_define})\n"
- " extern const struct _mp_obj_module_t {obj_module};\n"
- " #define {mod_def} {{ MP_ROM_QSTR({module_name}), MP_ROM_PTR(&{obj_module}) }},\n"
- "#else\n"
- " #define {mod_def}\n"
- "#endif\n"
- ).format(module_name=module_name, obj_module=obj_module,
- enabled_define=enabled_define, mod_def=mod_def)
+ print(
+ (
+ "#if ({enabled_define})\n"
+ " extern const struct _mp_obj_module_t {obj_module};\n"
+ " #define {mod_def} {{ MP_ROM_QSTR({module_name}), MP_ROM_PTR(&{obj_module}) }},\n"
+ "#else\n"
+ " #define {mod_def}\n"
+ "#endif\n"
+ ).format(
+ module_name=module_name,
+ obj_module=obj_module,
+ enabled_define=enabled_define,
+ mod_def=mod_def,
+ )
)
print("\n#define MICROPY_REGISTERED_MODULES \\")
@@ -87,13 +89,13 @@ def generate_module_table_header(modules):
def main():
parser = argparse.ArgumentParser()
- parser.add_argument("--vpath", default=".",
- help="comma separated list of folders to search for c files in")
- parser.add_argument("files", nargs="*",
- help="list of c files to search")
+ parser.add_argument(
+ "--vpath", default=".", help="comma separated list of folders to search for c files in"
+ )
+ parser.add_argument("files", nargs="*", help="list of c files to search")
args = parser.parse_args()
- vpath = [p.strip() for p in args.vpath.split(',')]
+ vpath = [p.strip() for p in args.vpath.split(",")]
modules = set()
for obj_file in args.files:
@@ -103,5 +105,5 @@ def main():
generate_module_table_header(sorted(modules))
-if __name__ == '__main__':
+if __name__ == "__main__":
main()
diff --git a/py/makeqstrdata.py b/py/makeqstrdata.py
index b4f4f1b03..0ad749005 100644
--- a/py/makeqstrdata.py
+++ b/py/makeqstrdata.py
@@ -17,9 +17,9 @@ import collections
import gettext
import os.path
-if hasattr(sys.stdout, 'reconfigure'):
- sys.stdout.reconfigure(encoding='utf-8')
- sys.stderr.reconfigure(errors='backslashreplace')
+if hasattr(sys.stdout, "reconfigure"):
+ sys.stdout.reconfigure(encoding="utf-8")
+ sys.stderr.reconfigure(errors="backslashreplace")
py = os.path.dirname(sys.argv[0])
top = os.path.dirname(py)
@@ -32,43 +32,44 @@ import huffman
# - iterating through bytes is different
# - codepoint2name lives in a different module
import platform
-if platform.python_version_tuple()[0] == '2':
+
+if platform.python_version_tuple()[0] == "2":
bytes_cons = lambda val, enc=None: bytearray(val)
from htmlentitydefs import codepoint2name
-elif platform.python_version_tuple()[0] == '3':
+elif platform.python_version_tuple()[0] == "3":
bytes_cons = bytes
from html.entities import codepoint2name
# end compatibility code
-codepoint2name[ord('-')] = 'hyphen';
+codepoint2name[ord("-")] = "hyphen"
# add some custom names to map characters that aren't in HTML
-codepoint2name[ord(' ')] = 'space'
-codepoint2name[ord('\'')] = 'squot'
-codepoint2name[ord(',')] = 'comma'
-codepoint2name[ord('.')] = 'dot'
-codepoint2name[ord(':')] = 'colon'
-codepoint2name[ord(';')] = 'semicolon'
-codepoint2name[ord('/')] = 'slash'
-codepoint2name[ord('%')] = 'percent'
-codepoint2name[ord('#')] = 'hash'
-codepoint2name[ord('(')] = 'paren_open'
-codepoint2name[ord(')')] = 'paren_close'
-codepoint2name[ord('[')] = 'bracket_open'
-codepoint2name[ord(']')] = 'bracket_close'
-codepoint2name[ord('{')] = 'brace_open'
-codepoint2name[ord('}')] = 'brace_close'
-codepoint2name[ord('*')] = 'star'
-codepoint2name[ord('!')] = 'bang'
-codepoint2name[ord('\\')] = 'backslash'
-codepoint2name[ord('+')] = 'plus'
-codepoint2name[ord('$')] = 'dollar'
-codepoint2name[ord('=')] = 'equals'
-codepoint2name[ord('?')] = 'question'
-codepoint2name[ord('@')] = 'at_sign'
-codepoint2name[ord('^')] = 'caret'
-codepoint2name[ord('|')] = 'pipe'
-codepoint2name[ord('~')] = 'tilde'
+codepoint2name[ord(" ")] = "space"
+codepoint2name[ord("'")] = "squot"
+codepoint2name[ord(",")] = "comma"
+codepoint2name[ord(".")] = "dot"
+codepoint2name[ord(":")] = "colon"
+codepoint2name[ord(";")] = "semicolon"
+codepoint2name[ord("/")] = "slash"
+codepoint2name[ord("%")] = "percent"
+codepoint2name[ord("#")] = "hash"
+codepoint2name[ord("(")] = "paren_open"
+codepoint2name[ord(")")] = "paren_close"
+codepoint2name[ord("[")] = "bracket_open"
+codepoint2name[ord("]")] = "bracket_close"
+codepoint2name[ord("{")] = "brace_open"
+codepoint2name[ord("}")] = "brace_close"
+codepoint2name[ord("*")] = "star"
+codepoint2name[ord("!")] = "bang"
+codepoint2name[ord("\\")] = "backslash"
+codepoint2name[ord("+")] = "plus"
+codepoint2name[ord("$")] = "dollar"
+codepoint2name[ord("=")] = "equals"
+codepoint2name[ord("?")] = "question"
+codepoint2name[ord("@")] = "at_sign"
+codepoint2name[ord("^")] = "caret"
+codepoint2name[ord("|")] = "pipe"
+codepoint2name[ord("~")] = "tilde"
C_ESCAPES = {
"\a": "\\a",
@@ -78,8 +79,8 @@ C_ESCAPES = {
"\r": "\\r",
"\t": "\\t",
"\v": "\\v",
- "\'": "\\'",
- "\"": "\\\""
+ "'": "\\'",
+ '"': '\\"',
}
# this must match the equivalent function in qstr.c
@@ -90,6 +91,7 @@ def compute_hash(qstr, bytes_hash):
# Make sure that valid hash is never zero, zero means "hash not computed"
return (hash & ((1 << (8 * bytes_hash)) - 1)) or 1
+
def translate(translation_file, i18ns):
with open(translation_file, "rb") as f:
table = gettext.GNUTranslations(f)
@@ -105,6 +107,7 @@ def translate(translation_file, i18ns):
translations.append((original, translation))
return translations
+
class TextSplitter:
def __init__(self, words):
words.sort(key=lambda x: len(x), reverse=True)
@@ -134,6 +137,7 @@ class TextSplitter:
for m in self.pat.finditer(text):
yield m.group(0)
+
def iter_substrings(s, minlen, maxlen):
len_s = len(s)
maxlen = min(len_s, maxlen)
@@ -141,18 +145,19 @@ def iter_substrings(s, minlen, maxlen):
for begin in range(0, len_s - n + 1):
yield s[begin : begin + n]
+
def compute_huffman_coding(translations, compression_filename):
texts = [t[1] for t in translations]
words = []
start_unused = 0x80
- end_unused = 0xff
+ end_unused = 0xFF
max_ord = 0
for text in texts:
for c in text:
ord_c = ord(c)
max_ord = max(ord_c, max_ord)
- if 0x80 <= ord_c < 0xff:
+ if 0x80 <= ord_c < 0xFF:
end_unused = min(ord_c, end_unused)
max_words = end_unused - 0x80
@@ -180,10 +185,7 @@ def compute_huffman_coding(translations, compression_filename):
# Score the candidates we found. This is an empirical formula only,
# chosen for its effectiveness.
scores = sorted(
- (
- (s, (len(s) - 1) ** log(max(occ - 2, 1)), occ)
- for (s, occ) in counter.items()
- ),
+ ((s, (len(s) - 1) ** log(max(occ - 2, 1)), occ) for (s, occ) in counter.items()),
key=lambda x: x[1],
reverse=True,
)
@@ -234,8 +236,8 @@ def compute_huffman_coding(translations, compression_filename):
length_count[length] = 0
length_count[length] += 1
if last_length:
- renumbered <<= (length - last_length)
- canonical[atom] = '{0:0{width}b}'.format(renumbered, width=length)
+ renumbered <<= length - last_length
+ canonical[atom] = "{0:0{width}b}".format(renumbered, width=length)
# print(f"atom={repr(atom)} code={code}", file=sys.stderr)
if len(atom) > 1:
o = words.index(atom) + 0x80
@@ -257,7 +259,8 @@ def compute_huffman_coding(translations, compression_filename):
values = [(atom if len(atom) == 1 else chr(0x80 + words.index(atom))) for atom in values]
print("//", values, lengths)
max_translation_encoded_length = max(
- len(translation.encode("utf-8")) for (original, translation) in translations)
+ len(translation.encode("utf-8")) for (original, translation) in translations
+ )
wends = list(len(w) - 2 for w in words)
for i in range(1, len(wends)):
@@ -265,15 +268,28 @@ def compute_huffman_coding(translations, compression_filename):
with open(compression_filename, "w") as f:
f.write("const uint8_t lengths[] = {{ {} }};\n".format(", ".join(map(str, lengths))))
- f.write("const {} values[] = {{ {} }};\n".format(values_type, ", ".join(str(ord(u)) for u in values)))
- f.write("#define compress_max_length_bits ({})\n".format(max_translation_encoded_length.bit_length()))
- f.write("const {} words[] = {{ {} }};\n".format(values_type, ", ".join(str(ord(c)) for w in words for c in w)))
+ f.write(
+ "const {} values[] = {{ {} }};\n".format(
+ values_type, ", ".join(str(ord(u)) for u in values)
+ )
+ )
+ f.write(
+ "#define compress_max_length_bits ({})\n".format(
+ max_translation_encoded_length.bit_length()
+ )
+ )
+ f.write(
+ "const {} words[] = {{ {} }};\n".format(
+ values_type, ", ".join(str(ord(c)) for w in words for c in w)
+ )
+ )
f.write("const uint8_t wends[] = {{ {} }};\n".format(", ".join(str(p) for p in wends)))
f.write("#define word_start {}\n".format(word_start))
f.write("#define word_end {}\n".format(word_end))
return (values, lengths, words, canonical, extractor)
+
def decompress(encoding_table, encoded, encoded_length_bits):
(values, lengths, words, _, _) = encoding_table
dec = []
@@ -317,7 +333,7 @@ def decompress(encoding_table, encoded, encoded_length_bits):
else:
this_bit -= 1
if max_code > 0 and bits < max_code:
- #print('{0:0{width}b}'.format(bits, width=bit_length))
+ # print('{0:0{width}b}'.format(bits, width=bit_length))
break
max_code = (max_code << 1) + lengths[bit_length]
searched_length += lengths[bit_length]
@@ -325,9 +341,10 @@ def decompress(encoding_table, encoded, encoded_length_bits):
v = values[searched_length + bits - max_code]
if v >= chr(0x80) and v < chr(0x80 + len(words)):
v = words[ord(v) - 0x80]
- i += len(v.encode('utf-8'))
+ i += len(v.encode("utf-8"))
dec.append(v)
- return ''.join(dec)
+ return "".join(dec)
+
def compress(encoding_table, decompressed, encoded_length_bits, len_translation_encoded):
if not isinstance(decompressed, str):
@@ -362,15 +379,18 @@ def compress(encoding_table, decompressed, encoded_length_bits, len_translation_
current_byte += 1
return enc[:current_byte]
+
def qstr_escape(qst):
def esc_char(m):
c = ord(m.group(0))
try:
name = codepoint2name[c]
except KeyError:
- name = '0x%02x' % c
- return "_" + name + '_'
- return re.sub(r'[^A-Za-z0-9_]', esc_char, qst)
+ name = "0x%02x" % c
+ return "_" + name + "_"
+
+ return re.sub(r"[^A-Za-z0-9_]", esc_char, qst)
+
def parse_input_headers(infiles):
# read the qstrs in from the input files
@@ -378,28 +398,27 @@ def parse_input_headers(infiles):
qstrs = {}
i18ns = set()
for infile in infiles:
- with open(infile, 'rt') as f:
+ with open(infile, "rt") as f:
for line in f:
line = line.strip()
# is this a config line?
- match = re.match(r'^QCFG\((.+), (.+)\)', line)
+ match = re.match(r"^QCFG\((.+), (.+)\)", line)
if match:
value = match.group(2)
- if value[0] == '(' and value[-1] == ')':
+ if value[0] == "(" and value[-1] == ")":
# strip parenthesis from config value
value = value[1:-1]
qcfgs[match.group(1)] = value
continue
-
match = re.match(r'^TRANSLATE\("(.*)"\)$', line)
if match:
i18ns.add(match.group(1))
continue
# is this a QSTR line?
- match = re.match(r'^Q\((.*)\)$', line)
+ match = re.match(r"^Q\((.*)\)$", line)
if not match:
continue
@@ -407,8 +426,8 @@ def parse_input_headers(infiles):
qstr = match.group(1)
# special case to specify control characters
- if qstr == '\\n':
- qstr = '\n'
+ if qstr == "\\n":
+ qstr = "\n"
# work out the corresponding qstr name
ident = qstr_escape(qstr)
@@ -437,56 +456,73 @@ def parse_input_headers(infiles):
return qcfgs, qstrs, i18ns
+
def make_bytes(cfg_bytes_len, cfg_bytes_hash, qstr):
- qbytes = bytes_cons(qstr, 'utf8')
+ qbytes = bytes_cons(qstr, "utf8")
qlen = len(qbytes)
qhash = compute_hash(qbytes, cfg_bytes_hash)
- if all(32 <= ord(c) <= 126 and c != '\\' and c != '"' for c in qstr):
+ if all(32 <= ord(c) <= 126 and c != "\\" and c != '"' for c in qstr):
# qstr is all printable ASCII so render it as-is (for easier debugging)
qdata = qstr
else:
# qstr contains non-printable codes so render entire thing as hex pairs
- qdata = ''.join(('\\x%02x' % b) for b in qbytes)
+ qdata = "".join(("\\x%02x" % b) for b in qbytes)
if qlen >= (1 << (8 * cfg_bytes_len)):
- print('qstr is too long:', qstr)
+ print("qstr is too long:", qstr)
assert False
- qlen_str = ('\\x%02x' * cfg_bytes_len) % tuple(((qlen >> (8 * i)) & 0xff) for i in range(cfg_bytes_len))
- qhash_str = ('\\x%02x' * cfg_bytes_hash) % tuple(((qhash >> (8 * i)) & 0xff) for i in range(cfg_bytes_hash))
+ qlen_str = ("\\x%02x" * cfg_bytes_len) % tuple(
+ ((qlen >> (8 * i)) & 0xFF) for i in range(cfg_bytes_len)
+ )
+ qhash_str = ("\\x%02x" * cfg_bytes_hash) % tuple(
+ ((qhash >> (8 * i)) & 0xFF) for i in range(cfg_bytes_hash)
+ )
return '(const byte*)"%s%s" "%s"' % (qhash_str, qlen_str, qdata)
+
def print_qstr_data(encoding_table, qcfgs, qstrs, i18ns):
# get config variables
- cfg_bytes_len = int(qcfgs['BYTES_IN_LEN'])
- cfg_bytes_hash = int(qcfgs['BYTES_IN_HASH'])
+ cfg_bytes_len = int(qcfgs["BYTES_IN_LEN"])
+ cfg_bytes_hash = int(qcfgs["BYTES_IN_HASH"])
# print out the starter of the generated C header file
- print('// This file was automatically generated by makeqstrdata.py')
- print('')
+ print("// This file was automatically generated by makeqstrdata.py")
+ print("")
# add NULL qstr with no hash or data
- print('QDEF(MP_QSTR_NULL, (const byte*)"%s%s" "")' % ('\\x00' * cfg_bytes_hash, '\\x00' * cfg_bytes_len))
+ print(
+ 'QDEF(MP_QSTR_NULL, (const byte*)"%s%s" "")'
+ % ("\\x00" * cfg_bytes_hash, "\\x00" * cfg_bytes_len)
+ )
total_qstr_size = 0
total_qstr_compressed_size = 0
# go through each qstr and print it out
for order, ident, qstr in sorted(qstrs.values(), key=lambda x: x[0]):
qbytes = make_bytes(cfg_bytes_len, cfg_bytes_hash, qstr)
- print('QDEF(MP_QSTR_%s, %s)' % (ident, qbytes))
+ print("QDEF(MP_QSTR_%s, %s)" % (ident, qbytes))
total_qstr_size += len(qstr)
total_text_size = 0
total_text_compressed_size = 0
- max_translation_encoded_length = max(len(translation.encode("utf-8")) for original, translation in i18ns)
+ max_translation_encoded_length = max(
+ len(translation.encode("utf-8")) for original, translation in i18ns
+ )
encoded_length_bits = max_translation_encoded_length.bit_length()
for original, translation in i18ns:
translation_encoded = translation.encode("utf-8")
- compressed = compress(encoding_table, translation, encoded_length_bits, len(translation_encoded))
+ compressed = compress(
+ encoding_table, translation, encoded_length_bits, len(translation_encoded)
+ )
total_text_compressed_size += len(compressed)
decompressed = decompress(encoding_table, compressed, encoded_length_bits)
assert decompressed == translation
for c in C_ESCAPES:
decompressed = decompressed.replace(c, C_ESCAPES[c])
- print("TRANSLATION(\"{}\", {}) // {}".format(original, ", ".join(["{:d}".format(x) for x in compressed]), decompressed))
+ print(
+ 'TRANSLATION("{}", {}) // {}'.format(
+ original, ", ".join(["{:d}".format(x) for x in compressed]), decompressed
+ )
+ )
total_text_size += len(translation.encode("utf-8"))
print()
@@ -495,28 +531,35 @@ def print_qstr_data(encoding_table, qcfgs, qstrs, i18ns):
print("// {} bytes worth of translations compressed".format(total_text_compressed_size))
print("// {} bytes saved".format(total_text_size - total_text_compressed_size))
+
def print_qstr_enums(qstrs):
# print out the starter of the generated C header file
- print('// This file was automatically generated by makeqstrdata.py')
- print('')
+ print("// This file was automatically generated by makeqstrdata.py")
+ print("")
# add NULL qstr with no hash or data
- print('QENUM(MP_QSTR_NULL)')
+ print("QENUM(MP_QSTR_NULL)")
# go through each qstr and print it out
for order, ident, qstr in sorted(qstrs.values(), key=lambda x: x[0]):
- print('QENUM(MP_QSTR_%s)' % (ident,))
+ print("QENUM(MP_QSTR_%s)" % (ident,))
+
if __name__ == "__main__":
import argparse
- parser = argparse.ArgumentParser(description='Process QSTR definitions into headers for compilation')
- parser.add_argument('infiles', metavar='N', type=str, nargs='+',
- help='an integer for the accumulator')
- parser.add_argument('--translation', default=None, type=str,
- help='translations for i18n() items')
- parser.add_argument('--compression_filename', default=None, type=str,
- help='header for compression info')
+ parser = argparse.ArgumentParser(
+ description="Process QSTR definitions into headers for compilation"
+ )
+ parser.add_argument(
+ "infiles", metavar="N", type=str, nargs="+", help="an integer for the accumulator"
+ )
+ parser.add_argument(
+ "--translation", default=None, type=str, help="translations for i18n() items"
+ )
+ parser.add_argument(
+ "--compression_filename", default=None, type=str, help="header for compression info"
+ )
args = parser.parse_args()
diff --git a/py/makeqstrdefs.py b/py/makeqstrdefs.py
index d3e90ba48..e6c003311 100644
--- a/py/makeqstrdefs.py
+++ b/py/makeqstrdefs.py
@@ -15,51 +15,54 @@ import os
# - iterating through bytes is different
# - codepoint2name lives in a different module
import platform
-if platform.python_version_tuple()[0] == '2':
+
+if platform.python_version_tuple()[0] == "2":
bytes_cons = lambda val, enc=None: bytearray(val)
from htmlentitydefs import name2codepoint
-elif platform.python_version_tuple()[0] == '3':
+elif platform.python_version_tuple()[0] == "3":
bytes_cons = bytes
from html.entities import name2codepoint
+
unichr = chr
# end compatibility code
# Blacklist of qstrings that are specially handled in further
# processing and should be ignored
-QSTRING_BLACK_LIST = set(['NULL', 'number_of'])
+QSTRING_BLACK_LIST = set(["NULL", "number_of"])
# add some custom names to map characters that aren't in HTML
-name2codepoint['hyphen'] = ord('-')
-name2codepoint['space'] = ord(' ')
-name2codepoint['squot'] = ord('\'')
-name2codepoint['comma'] = ord(',')
-name2codepoint['dot'] = ord('.')
-name2codepoint['colon'] = ord(':')
-name2codepoint['semicolon'] = ord(';')
-name2codepoint['slash'] = ord('/')
-name2codepoint['percent'] = ord('%')
-name2codepoint['hash'] = ord('#')
-name2codepoint['paren_open'] = ord('(')
-name2codepoint['paren_close'] = ord(')')
-name2codepoint['bracket_open'] = ord('[')
-name2codepoint['bracket_close'] = ord(']')
-name2codepoint['brace_open'] = ord('{')
-name2codepoint['brace_close'] = ord('}')
-name2codepoint['star'] = ord('*')
-name2codepoint['bang'] = ord('!')
-name2codepoint['backslash'] = ord('\\')
-name2codepoint['plus'] = ord('+')
-name2codepoint['dollar'] = ord('$')
-name2codepoint['equals'] = ord('=')
-name2codepoint['question'] = ord('?')
-name2codepoint['at_sign'] = ord('@')
-name2codepoint['caret'] = ord('^')
-name2codepoint['pipe'] = ord('|')
-name2codepoint['tilde'] = ord('~')
+name2codepoint["hyphen"] = ord("-")
+name2codepoint["space"] = ord(" ")
+name2codepoint["squot"] = ord("'")
+name2codepoint["comma"] = ord(",")
+name2codepoint["dot"] = ord(".")
+name2codepoint["colon"] = ord(":")
+name2codepoint["semicolon"] = ord(";")
+name2codepoint["slash"] = ord("/")
+name2codepoint["percent"] = ord("%")
+name2codepoint["hash"] = ord("#")
+name2codepoint["paren_open"] = ord("(")
+name2codepoint["paren_close"] = ord(")")
+name2codepoint["bracket_open"] = ord("[")
+name2codepoint["bracket_close"] = ord("]")
+name2codepoint["brace_open"] = ord("{")
+name2codepoint["brace_close"] = ord("}")
+name2codepoint["star"] = ord("*")
+name2codepoint["bang"] = ord("!")
+name2codepoint["backslash"] = ord("\\")
+name2codepoint["plus"] = ord("+")
+name2codepoint["dollar"] = ord("$")
+name2codepoint["equals"] = ord("=")
+name2codepoint["question"] = ord("?")
+name2codepoint["at_sign"] = ord("@")
+name2codepoint["caret"] = ord("^")
+name2codepoint["pipe"] = ord("|")
+name2codepoint["tilde"] = ord("~")
# These are just vexing!
-del name2codepoint['and']
-del name2codepoint['or']
+del name2codepoint["and"]
+del name2codepoint["or"]
+
def write_out(fname, output):
if output:
@@ -68,18 +71,20 @@ def write_out(fname, output):
with open(args.output_dir + "/" + fname + ".qstr", "w") as f:
f.write("\n".join(output) + "\n")
+
def qstr_unescape(qstr):
for name in name2codepoint:
if "__" + name + "__" in qstr:
continue
if "_" + name + "_" in qstr:
- qstr = qstr.replace("_" + name + "_", str(unichr(name2codepoint[name])))
+ qstr = qstr.replace("_" + name + "_", str(unichr(name2codepoint[name])))
return qstr
+
def process_file(f):
re_line = re.compile(r"#[line]*\s(\d+)\s\"([^\"]+)\"")
- re_qstr = re.compile(r'MP_QSTR_[_a-zA-Z0-9]+')
- re_translate = re.compile(r'translate\(\"((?:(?=(\\?))\2.)*?)\"\)')
+ re_qstr = re.compile(r"MP_QSTR_[_a-zA-Z0-9]+")
+ re_translate = re.compile(r"translate\(\"((?:(?=(\\?))\2.)*?)\"\)")
output = []
last_fname = None
lineno = 0
@@ -87,10 +92,10 @@ def process_file(f):
if line.isspace():
continue
# match gcc-like output (# n "file") and msvc-like output (#line n "file")
- if line.startswith(('# ', '#line')):
+ if line.startswith(("# ", "#line")):
m = re_line.match(line)
assert m is not None
- #print(m.groups())
+ # print(m.groups())
lineno = int(m.group(1))
fname = m.group(2)
if not fname.endswith(".c"):
@@ -101,9 +106,9 @@ def process_file(f):
last_fname = fname
continue
for match in re_qstr.findall(line):
- name = match.replace('MP_QSTR_', '')
+ name = match.replace("MP_QSTR_", "")
if name not in QSTRING_BLACK_LIST:
- output.append('Q(' + qstr_unescape(name) + ')')
+ output.append("Q(" + qstr_unescape(name) + ")")
for match in re_translate.findall(line):
output.append('TRANSLATE("' + match[0] + '")')
lineno += 1
@@ -115,6 +120,7 @@ def process_file(f):
def cat_together():
import glob
import hashlib
+
hasher = hashlib.md5()
all_lines = []
outf = open(args.output_dir + "/out", "wb")
@@ -128,7 +134,7 @@ def cat_together():
outf.close()
hasher.update(all_lines)
new_hash = hasher.hexdigest()
- #print(new_hash)
+ # print(new_hash)
old_hash = None
try:
with open(args.output_file + ".hash") as f:
@@ -151,11 +157,12 @@ def cat_together():
if __name__ == "__main__":
if len(sys.argv) != 5:
- print('usage: %s command input_filename output_dir output_file' % sys.argv[0])
+ print("usage: %s command input_filename output_dir output_file" % sys.argv[0])
sys.exit(2)
class Args:
pass
+
args = Args()
args.command = sys.argv[1]
args.input_filename = sys.argv[2]
diff --git a/py/makeversionhdr.py b/py/makeversionhdr.py
index 7ceeaeadd..41e595654 100644
--- a/py/makeversionhdr.py
+++ b/py/makeversionhdr.py
@@ -11,6 +11,7 @@ import os
import datetime
import subprocess
+
def get_version_info_from_git():
# Python 2.6 doesn't have check_output, so check for that
try:
@@ -21,7 +22,11 @@ def get_version_info_from_git():
# Note: git describe doesn't work if no tag is available
try:
- git_tag = subprocess.check_output(["git", "describe", "--dirty", "--always", "--tags"], stderr=subprocess.STDOUT, universal_newlines=True).strip()
+ git_tag = subprocess.check_output(
+ ["git", "describe", "--dirty", "--always", "--tags"],
+ stderr=subprocess.STDOUT,
+ universal_newlines=True,
+ ).strip()
except subprocess.CalledProcessError as er:
if er.returncode == 128:
# git exit code of 128 means no repository found
@@ -30,7 +35,11 @@ def get_version_info_from_git():
except OSError:
return None
try:
- git_hash = subprocess.check_output(["git", "rev-parse", "--short", "HEAD"], stderr=subprocess.STDOUT, universal_newlines=True).strip()
+ git_hash = subprocess.check_output(
+ ["git", "rev-parse", "--short", "HEAD"],
+ stderr=subprocess.STDOUT,
+ universal_newlines=True,
+ ).strip()
except subprocess.CalledProcessError:
git_hash = "unknown"
except OSError:
@@ -38,9 +47,13 @@ def get_version_info_from_git():
try:
# Check if there are any modified files.
- subprocess.check_call(["git", "diff", "--no-ext-diff", "--quiet", "--exit-code"], stderr=subprocess.STDOUT)
+ subprocess.check_call(
+ ["git", "diff", "--no-ext-diff", "--quiet", "--exit-code"], stderr=subprocess.STDOUT
+ )
# Check if there are any staged files.
- subprocess.check_call(["git", "diff-index", "--cached", "--quiet", "HEAD", "--"], stderr=subprocess.STDOUT)
+ subprocess.check_call(
+ ["git", "diff-index", "--cached", "--quiet", "HEAD", "--"], stderr=subprocess.STDOUT
+ )
except subprocess.CalledProcessError:
git_hash += "-dirty"
except OSError:
@@ -51,6 +64,7 @@ def get_version_info_from_git():
return git_tag, git_hash, ver
+
def get_version_info_from_docs_conf():
with open(os.path.join(os.path.dirname(sys.argv[0]), "..", "conf.py")) as f:
for line in f:
@@ -63,6 +77,7 @@ def get_version_info_from_docs_conf():
return git_tag, "<no hash>", ver
return None
+
def make_version_header(filename):
# Get version info using git, with fallback to docs/conf.py
info = get_version_info_from_git()
@@ -87,21 +102,29 @@ def make_version_header(filename):
#define MICROPY_VERSION_MICRO (%s)
#define MICROPY_VERSION_STRING "%s"
#define MICROPY_FULL_VERSION_INFO ("Adafruit CircuitPython " MICROPY_GIT_TAG " on " MICROPY_BUILD_DATE "; " MICROPY_HW_BOARD_NAME " with " MICROPY_HW_MCU_NAME)
-""" % (git_tag, git_hash, datetime.date.today().strftime("%Y-%m-%d"),
- ver[0].replace('v', ''), ver[1], ver[2], version_string)
+""" % (
+ git_tag,
+ git_hash,
+ datetime.date.today().strftime("%Y-%m-%d"),
+ ver[0].replace("v", ""),
+ ver[1],
+ ver[2],
+ version_string,
+ )
# Check if the file contents changed from last time
write_file = True
if os.path.isfile(filename):
- with open(filename, 'r') as f:
+ with open(filename, "r") as f:
existing_data = f.read()
if existing_data == file_data:
write_file = False
# Only write the file if we need to
if write_file:
- with open(filename, 'w') as f:
+ with open(filename, "w") as f:
f.write(file_data)
+
if __name__ == "__main__":
make_version_header(sys.argv[1])
diff --git a/py/malloc.c b/py/malloc.c
index c923e89a6..e06d20e95 100644
--- a/py/malloc.c
+++ b/py/malloc.c
@@ -82,22 +82,22 @@ void *m_malloc(size_t num_bytes, bool long_lived) {
if (ptr == NULL && num_bytes != 0) {
m_malloc_fail(num_bytes);
}
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
MP_STATE_MEM(total_bytes_allocated) += num_bytes;
MP_STATE_MEM(current_bytes_allocated) += num_bytes;
UPDATE_PEAK();
-#endif
+ #endif
DEBUG_printf("malloc %d : %p\n", num_bytes, ptr);
return ptr;
}
void *m_malloc_maybe(size_t num_bytes, bool long_lived) {
void *ptr = malloc_ll(num_bytes, long_lived);
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
MP_STATE_MEM(total_bytes_allocated) += num_bytes;
MP_STATE_MEM(current_bytes_allocated) += num_bytes;
UPDATE_PEAK();
-#endif
+ #endif
DEBUG_printf("malloc %d : %p\n", num_bytes, ptr);
return ptr;
}
@@ -108,11 +108,11 @@ void *m_malloc_with_finaliser(size_t num_bytes, bool long_lived) {
if (ptr == NULL && num_bytes != 0) {
m_malloc_fail(num_bytes);
}
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
MP_STATE_MEM(total_bytes_allocated) += num_bytes;
MP_STATE_MEM(current_bytes_allocated) += num_bytes;
UPDATE_PEAK();
-#endif
+ #endif
DEBUG_printf("malloc %d : %p\n", num_bytes, ptr);
return ptr;
}
@@ -131,12 +131,12 @@ void *m_malloc0(size_t num_bytes, bool long_lived) {
void *m_realloc(void *ptr, size_t old_num_bytes, size_t new_num_bytes) {
#else
void *m_realloc(void *ptr, size_t new_num_bytes) {
-#endif
+ #endif
void *new_ptr = realloc(ptr, new_num_bytes);
if (new_ptr == NULL && new_num_bytes != 0) {
m_malloc_fail(new_num_bytes);
}
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
// At first thought, "Total bytes allocated" should only grow,
// after all, it's *total*. But consider for example 2K block
// shrunk to 1K and then grown to 2K again. It's still 2K
@@ -146,7 +146,7 @@ void *m_realloc(void *ptr, size_t new_num_bytes) {
MP_STATE_MEM(total_bytes_allocated) += diff;
MP_STATE_MEM(current_bytes_allocated) += diff;
UPDATE_PEAK();
-#endif
+ #endif
#if MICROPY_MALLOC_USES_ALLOCATED_SIZE
DEBUG_printf("realloc %p, %d, %d : %p\n", ptr, old_num_bytes, new_num_bytes, new_ptr);
#else
@@ -159,9 +159,9 @@ void *m_realloc(void *ptr, size_t new_num_bytes) {
void *m_realloc_maybe(void *ptr, size_t old_num_bytes, size_t new_num_bytes, bool allow_move) {
#else
void *m_realloc_maybe(void *ptr, size_t new_num_bytes, bool allow_move) {
-#endif
+ #endif
void *new_ptr = realloc_ext(ptr, new_num_bytes, allow_move);
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
// At first thought, "Total bytes allocated" should only grow,
// after all, it's *total*. But consider for example 2K block
// shrunk to 1K and then grown to 2K again. It's still 2K
@@ -174,7 +174,7 @@ void *m_realloc_maybe(void *ptr, size_t new_num_bytes, bool allow_move) {
MP_STATE_MEM(current_bytes_allocated) += diff;
UPDATE_PEAK();
}
-#endif
+ #endif
#if MICROPY_MALLOC_USES_ALLOCATED_SIZE
DEBUG_printf("realloc %p, %d, %d : %p\n", ptr, old_num_bytes, new_num_bytes, new_ptr);
#else
@@ -187,11 +187,11 @@ void *m_realloc_maybe(void *ptr, size_t new_num_bytes, bool allow_move) {
void m_free(void *ptr, size_t num_bytes) {
#else
void m_free(void *ptr) {
-#endif
+ #endif
free(ptr);
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
MP_STATE_MEM(current_bytes_allocated) -= num_bytes;
-#endif
+ #endif
#if MICROPY_MALLOC_USES_ALLOCATED_SIZE
DEBUG_printf("free %p, %d\n", ptr, num_bytes);
#else
diff --git a/py/map.c b/py/map.c
index 69eed9d3b..a37a3c984 100644
--- a/py/map.c
+++ b/py/map.c
@@ -98,7 +98,7 @@ void mp_map_init_fixed_table(mp_map_t *map, size_t n, const mp_obj_t *table) {
map->all_keys_are_qstrs = 1;
map->is_fixed = 1;
map->is_ordered = 1;
- map->table = (mp_map_elem_t*)table;
+ map->table = (mp_map_elem_t *)table;
}
// Differentiate from mp_map_clear() - semantics is different
@@ -145,7 +145,7 @@ STATIC void mp_map_rehash(mp_map_t *map) {
// - returns slot, with key non-null and value=MP_OBJ_NULL if it was added
// MP_MAP_LOOKUP_REMOVE_IF_FOUND behaviour:
// - returns NULL if not found, else the slot if was found in with key null and value non-null
-mp_map_elem_t *PLACE_IN_ITCM(mp_map_lookup)(mp_map_t *map, mp_obj_t index, mp_map_lookup_kind_t lookup_kind) {
+mp_map_elem_t *PLACE_IN_ITCM(mp_map_lookup)(mp_map_t * map, mp_obj_t index, mp_map_lookup_kind_t lookup_kind) {
// If the map is a fixed array then we must only be called for a lookup
assert(!map->is_fixed || lookup_kind == MP_MAP_LOOKUP);
diff --git a/py/misc.h b/py/misc.h
index 0fef7e249..cb7192a56 100644
--- a/py/misc.h
+++ b/py/misc.h
@@ -59,35 +59,35 @@ typedef unsigned int uint;
// TODO make a lazy m_renew that can increase by a smaller amount than requested (but by at least 1 more element)
-#define m_new(type, num) ((type*)(m_malloc(sizeof(type) * (num), false)))
-#define m_new_ll(type, num) ((type*)(m_malloc(sizeof(type) * (num), true)))
-#define m_new_maybe(type, num) ((type*)(m_malloc_maybe(sizeof(type) * (num), false)))
-#define m_new_ll_maybe(type, num) ((type*)(m_malloc_maybe(sizeof(type) * (num), true)))
-#define m_new0(type, num) ((type*)(m_malloc0(sizeof(type) * (num), false)))
-#define m_new0_ll(type, num) ((type*)(m_malloc0(sizeof(type) * (num), true)))
+#define m_new(type, num) ((type *)(m_malloc(sizeof(type) * (num), false)))
+#define m_new_ll(type, num) ((type *)(m_malloc(sizeof(type) * (num), true)))
+#define m_new_maybe(type, num) ((type *)(m_malloc_maybe(sizeof(type) * (num), false)))
+#define m_new_ll_maybe(type, num) ((type *)(m_malloc_maybe(sizeof(type) * (num), true)))
+#define m_new0(type, num) ((type *)(m_malloc0(sizeof(type) * (num), false)))
+#define m_new0_ll(type, num) ((type *)(m_malloc0(sizeof(type) * (num), true)))
#define m_new_obj(type) (m_new(type, 1))
#define m_new_ll_obj(type) (m_new_ll(type, 1))
#define m_new_obj_maybe(type) (m_new_maybe(type, 1))
-#define m_new_obj_var(obj_type, var_type, var_num) ((obj_type*)m_malloc(sizeof(obj_type) + sizeof(var_type) * (var_num), false))
-#define m_new_obj_var_maybe(obj_type, var_type, var_num) ((obj_type*)m_malloc_maybe(sizeof(obj_type) + sizeof(var_type) * (var_num), false))
-#define m_new_ll_obj_var_maybe(obj_type, var_type, var_num) ((obj_type*)m_malloc_maybe(sizeof(obj_type) + sizeof(var_type) * (var_num), true))
+#define m_new_obj_var(obj_type, var_type, var_num) ((obj_type *)m_malloc(sizeof(obj_type) + sizeof(var_type) * (var_num), false))
+#define m_new_obj_var_maybe(obj_type, var_type, var_num) ((obj_type *)m_malloc_maybe(sizeof(obj_type) + sizeof(var_type) * (var_num), false))
+#define m_new_ll_obj_var_maybe(obj_type, var_type, var_num) ((obj_type *)m_malloc_maybe(sizeof(obj_type) + sizeof(var_type) * (var_num), true))
#if MICROPY_ENABLE_FINALISER
-#define m_new_obj_with_finaliser(type) ((type*)(m_malloc_with_finaliser(sizeof(type), false)))
-#define m_new_obj_var_with_finaliser(type, var_type, var_num) ((type*)m_malloc_with_finaliser(sizeof(type) + sizeof(var_type) * (var_num), false))
-#define m_new_ll_obj_with_finaliser(type) ((type*)(m_malloc_with_finaliser(sizeof(type), true)))
+#define m_new_obj_with_finaliser(type) ((type *)(m_malloc_with_finaliser(sizeof(type), false)))
+#define m_new_obj_var_with_finaliser(type, var_type, var_num) ((type *)m_malloc_with_finaliser(sizeof(type) + sizeof(var_type) * (var_num), false))
+#define m_new_ll_obj_with_finaliser(type) ((type *)(m_malloc_with_finaliser(sizeof(type), true)))
#else
#define m_new_obj_with_finaliser(type) m_new_obj(type)
#define m_new_obj_var_with_finaliser(type, var_type, var_num) m_new_obj_var(type, var_type, var_num)
#define m_new_ll_obj_with_finaliser(type) m_new_ll_obj(type)
#endif
#if MICROPY_MALLOC_USES_ALLOCATED_SIZE
-#define m_renew(type, ptr, old_num, new_num) ((type*)(m_realloc((ptr), sizeof(type) * (old_num), sizeof(type) * (new_num))))
-#define m_renew_maybe(type, ptr, old_num, new_num, allow_move) ((type*)(m_realloc_maybe((ptr), sizeof(type) * (old_num), sizeof(type) * (new_num), (allow_move))))
+#define m_renew(type, ptr, old_num, new_num) ((type *)(m_realloc((ptr), sizeof(type) * (old_num), sizeof(type) * (new_num))))
+#define m_renew_maybe(type, ptr, old_num, new_num, allow_move) ((type *)(m_realloc_maybe((ptr), sizeof(type) * (old_num), sizeof(type) * (new_num), (allow_move))))
#define m_del(type, ptr, num) m_free(ptr, sizeof(type) * (num))
#define m_del_var(obj_type, var_type, var_num, ptr) (m_free(ptr, sizeof(obj_type) + sizeof(var_type) * (var_num)))
#else
-#define m_renew(type, ptr, old_num, new_num) ((type*)(m_realloc((ptr), sizeof(type) * (new_num))))
-#define m_renew_maybe(type, ptr, old_num, new_num, allow_move) ((type*)(m_realloc_maybe((ptr), sizeof(type) * (new_num), (allow_move))))
+#define m_renew(type, ptr, old_num, new_num) ((type *)(m_realloc((ptr), sizeof(type) * (new_num))))
+#define m_renew_maybe(type, ptr, old_num, new_num, allow_move) ((type *)(m_realloc_maybe((ptr), sizeof(type) * (new_num), (allow_move))))
#define m_del(type, ptr, num) ((void)(num), m_free(ptr))
#define m_del_var(obj_type, var_type, var_num, ptr) ((void)(var_num), m_free(ptr))
#endif
@@ -120,7 +120,7 @@ size_t m_get_peak_bytes_allocated(void);
#define MP_ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
// align ptr to the nearest multiple of "alignment"
-#define MP_ALIGN(ptr, alignment) (void*)(((uintptr_t)(ptr) + ((alignment) - 1)) & ~((alignment) - 1))
+#define MP_ALIGN(ptr, alignment) (void *)(((uintptr_t)(ptr) + ((alignment) - 1)) & ~((alignment) - 1))
#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
@@ -140,9 +140,16 @@ unichar utf8_get_char(const byte *s);
const byte *utf8_next_char(const byte *s);
size_t utf8_charlen(const byte *str, size_t len);
#else
-static inline unichar utf8_get_char(const byte *s) { return *s; }
-static inline const byte *utf8_next_char(const byte *s) { return s + 1; }
-static inline size_t utf8_charlen(const byte *str, size_t len) { (void)str; return len; }
+static inline unichar utf8_get_char(const byte *s) {
+ return *s;
+}
+static inline const byte *utf8_next_char(const byte *s) {
+ return s + 1;
+}
+static inline size_t utf8_charlen(const byte *str, size_t len) {
+ (void)str;
+ return len;
+}
#endif
bool unichar_isspace(unichar c);
@@ -179,9 +186,15 @@ void vstr_init_print(vstr_t *vstr, size_t alloc, struct _mp_print_t *print);
void vstr_clear(vstr_t *vstr);
vstr_t *vstr_new(size_t alloc);
void vstr_free(vstr_t *vstr);
-static inline void vstr_reset(vstr_t *vstr) { vstr->len = 0; }
-static inline char *vstr_str(vstr_t *vstr) { return vstr->buf; }
-static inline size_t vstr_len(vstr_t *vstr) { return vstr->len; }
+static inline void vstr_reset(vstr_t *vstr) {
+ vstr->len = 0;
+}
+static inline char *vstr_str(vstr_t *vstr) {
+ return vstr->buf;
+}
+static inline size_t vstr_len(vstr_t *vstr) {
+ return vstr->len;
+}
void vstr_hint_size(vstr_t *vstr, size_t size);
char *vstr_extend(vstr_t *vstr, size_t size);
char *vstr_add_len(vstr_t *vstr, size_t len);
@@ -202,10 +215,10 @@ void vstr_printf(vstr_t *vstr, const char *fmt, ...);
#define CHECKBUF(buf, max_size) char buf[max_size + 1]; size_t buf##_len = max_size; char *buf##_p = buf;
#define CHECKBUF_RESET(buf, max_size) buf##_len = max_size; buf##_p = buf;
#define CHECKBUF_APPEND(buf, src, src_len) \
- { size_t l = MIN(src_len, buf##_len); \
- memcpy(buf##_p, src, l); \
- buf##_len -= l; \
- buf##_p += l; }
+ { size_t l = MIN(src_len, buf##_len); \
+ memcpy(buf##_p, src, l); \
+ buf##_len -= l; \
+ buf##_p += l; }
#define CHECKBUF_APPEND_0(buf) { *buf##_p = 0; }
#define CHECKBUF_LEN(buf) (buf##_p - buf)
diff --git a/py/modarray.c b/py/modarray.c
index 75bc5169f..a47684bf9 100644
--- a/py/modarray.c
+++ b/py/modarray.c
@@ -37,7 +37,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_array_globals, mp_module_array_globals_tab
const mp_obj_module_t mp_module_array = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_array_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_array_globals,
};
#endif
diff --git a/py/modbuiltins.c b/py/modbuiltins.c
index fe3c366ee..ccf29cfe1 100644
--- a/py/modbuiltins.c
+++ b/py/modbuiltins.c
@@ -142,7 +142,8 @@ STATIC mp_obj_t mp_builtin_chr(mp_obj_t o_in) {
uint8_t str[4];
int len = 0;
if (c < 0x80) {
- *str = c; len = 1;
+ *str = c;
+ len = 1;
} else if (c < 0x800) {
str[0] = (c >> 6) | 0xC0;
str[1] = (c & 0x3F) | 0x80;
@@ -161,12 +162,12 @@ STATIC mp_obj_t mp_builtin_chr(mp_obj_t o_in) {
} else {
mp_raise_ValueError(translate("chr() arg not in range(0x110000)"));
}
- return mp_obj_new_str_via_qstr((char*)str, len);
+ return mp_obj_new_str_via_qstr((char *)str, len);
#else
mp_int_t ord = mp_obj_get_int(o_in);
if (0 <= ord && ord <= 0xff) {
uint8_t str[1] = {ord};
- return mp_obj_new_str_via_qstr((char*)str, 1);
+ return mp_obj_new_str_via_qstr((char *)str, 1);
} else {
mp_raise_ValueError(translate("chr() arg not in range(256)"));
}
@@ -330,7 +331,7 @@ MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_oct_obj, mp_builtin_oct);
STATIC mp_obj_t mp_builtin_ord(mp_obj_t o_in) {
size_t len;
- const byte *str = (const byte*)mp_obj_str_get_data(o_in, &len);
+ const byte *str = (const byte *)mp_obj_str_get_data(o_in, &len);
#if MICROPY_PY_BUILTINS_STR_UNICODE
if (MP_OBJ_IS_STR(o_in)) {
len = utf8_charlen(str, len);
@@ -347,25 +348,26 @@ STATIC mp_obj_t mp_builtin_ord(mp_obj_t o_in) {
}
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("ord expects a character"));
+ mp_raise_TypeError(translate("ord expects a character"));
#else
- mp_raise_TypeError_varg(
- translate("ord() expected a character, but string of length %d found"), (int)len);
+ mp_raise_TypeError_varg(
+ translate("ord() expected a character, but string of length %d found"), (int)len);
#endif
}
MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_ord_obj, mp_builtin_ord);
STATIC mp_obj_t mp_builtin_pow(size_t n_args, const mp_obj_t *args) {
switch (n_args) {
- case 2: return mp_binary_op(MP_BINARY_OP_POWER, args[0], args[1]);
+ case 2:
+ return mp_binary_op(MP_BINARY_OP_POWER, args[0], args[1]);
default:
-#if !MICROPY_PY_BUILTINS_POW3
+ #if !MICROPY_PY_BUILTINS_POW3
mp_raise_msg(&mp_type_NotImplementedError, translate("3-arg pow() not supported"));
-#elif MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_MPZ
+ #elif MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_MPZ
return mp_binary_op(MP_BINARY_OP_MODULO, mp_binary_op(MP_BINARY_OP_POWER, args[0], args[1]), args[2]);
-#else
+ #else
return mp_obj_int_pow3(args[0], args[1], args[2]);
-#endif
+ #endif
}
}
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_builtin_pow_obj, 2, 3, mp_builtin_pow);
@@ -464,7 +466,7 @@ STATIC mp_obj_t mp_builtin_round(size_t n_args, const mp_obj_t *args) {
#else
mp_obj_t mult = mp_binary_op(MP_BINARY_OP_POWER, MP_OBJ_NEW_SMALL_INT(10), MP_OBJ_NEW_SMALL_INT(-num_dig));
- mp_obj_t half_mult = mp_binary_op(MP_BINARY_OP_FLOOR_DIVIDE, mult, MP_OBJ_NEW_SMALL_INT(2));
+ mp_obj_t half_mult = mp_binary_op(MP_BINARY_OP_FLOOR_DIVIDE, mult, MP_OBJ_NEW_SMALL_INT(2));
mp_obj_t modulo = mp_binary_op(MP_BINARY_OP_MODULO, o_in, mult);
mp_obj_t rounded = mp_binary_op(MP_BINARY_OP_SUBTRACT, o_in, modulo);
if (mp_obj_is_true(mp_binary_op(MP_BINARY_OP_MORE, half_mult, modulo))) {
@@ -482,7 +484,7 @@ STATIC mp_obj_t mp_builtin_round(size_t n_args, const mp_obj_t *args) {
}
#endif
}
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
mp_float_t val = mp_obj_get_float(o_in);
if (n_args > 1) {
mp_int_t num_dig = mp_obj_get_int(args[1]);
@@ -493,18 +495,22 @@ STATIC mp_obj_t mp_builtin_round(size_t n_args, const mp_obj_t *args) {
}
mp_float_t rounded = MICROPY_FLOAT_C_FUN(nearbyint)(val);
return mp_obj_new_int_from_float(rounded);
-#else
+ #else
mp_int_t r = mp_obj_get_int(o_in);
return mp_obj_new_int(r);
-#endif
+ #endif
}
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_builtin_round_obj, 1, 2, mp_builtin_round);
STATIC mp_obj_t mp_builtin_sum(size_t n_args, const mp_obj_t *args) {
mp_obj_t value;
switch (n_args) {
- case 1: value = MP_OBJ_NEW_SMALL_INT(0); break;
- default: value = args[1]; break;
+ case 1:
+ value = MP_OBJ_NEW_SMALL_INT(0);
+ break;
+ default:
+ value = args[1];
+ break;
}
mp_obj_iter_buf_t iter_buf;
mp_obj_t iterable = mp_getiter(args[0], &iter_buf);
@@ -726,9 +732,9 @@ STATIC const mp_rom_map_elem_t mp_module_builtins_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_NameError), MP_ROM_PTR(&mp_type_NameError) },
{ MP_ROM_QSTR(MP_QSTR_NotImplementedError), MP_ROM_PTR(&mp_type_NotImplementedError) },
{ MP_ROM_QSTR(MP_QSTR_OSError), MP_ROM_PTR(&mp_type_OSError) },
- { MP_ROM_QSTR(MP_QSTR_TimeoutError), MP_ROM_PTR(&mp_type_TimeoutError) },
- { MP_ROM_QSTR(MP_QSTR_ConnectionError), MP_ROM_PTR(&mp_type_ConnectionError) },
- { MP_ROM_QSTR(MP_QSTR_BrokenPipeError), MP_ROM_PTR(&mp_type_BrokenPipeError) },
+ { MP_ROM_QSTR(MP_QSTR_TimeoutError), MP_ROM_PTR(&mp_type_TimeoutError) },
+ { MP_ROM_QSTR(MP_QSTR_ConnectionError), MP_ROM_PTR(&mp_type_ConnectionError) },
+ { MP_ROM_QSTR(MP_QSTR_BrokenPipeError), MP_ROM_PTR(&mp_type_BrokenPipeError) },
{ MP_ROM_QSTR(MP_QSTR_OverflowError), MP_ROM_PTR(&mp_type_OverflowError) },
{ MP_ROM_QSTR(MP_QSTR_RuntimeError), MP_ROM_PTR(&mp_type_RuntimeError) },
#if MICROPY_PY_ASYNC_AWAIT
@@ -757,5 +763,5 @@ MP_DEFINE_CONST_DICT(mp_module_builtins_globals, mp_module_builtins_globals_tabl
const mp_obj_module_t mp_module_builtins = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_builtins_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_builtins_globals,
};
diff --git a/py/modcmath.c b/py/modcmath.c
index d6b364733..63f289d49 100644
--- a/py/modcmath.c
+++ b/py/modcmath.c
@@ -43,7 +43,7 @@ STATIC mp_obj_t mp_cmath_polar(mp_obj_t z_obj) {
mp_float_t real, imag;
mp_obj_get_complex(z_obj, &real, &imag);
mp_obj_t tuple[2] = {
- mp_obj_new_float(MICROPY_FLOAT_C_FUN(sqrt)(real*real + imag*imag)),
+ mp_obj_new_float(MICROPY_FLOAT_C_FUN(sqrt)(real * real + imag * imag)),
mp_obj_new_float(MICROPY_FLOAT_C_FUN(atan2)(imag, real)),
};
return mp_obj_new_tuple(2, tuple);
@@ -72,7 +72,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_cmath_exp_obj, mp_cmath_exp);
STATIC mp_obj_t mp_cmath_log(mp_obj_t z_obj) {
mp_float_t real, imag;
mp_obj_get_complex(z_obj, &real, &imag);
- return mp_obj_new_complex(0.5 * MICROPY_FLOAT_C_FUN(log)(real*real + imag*imag), MICROPY_FLOAT_C_FUN(atan2)(imag, real));
+ return mp_obj_new_complex(0.5 * MICROPY_FLOAT_C_FUN(log)(real * real + imag * imag), MICROPY_FLOAT_C_FUN(atan2)(imag, real));
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_cmath_log_obj, mp_cmath_log);
@@ -81,7 +81,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_cmath_log_obj, mp_cmath_log);
STATIC mp_obj_t mp_cmath_log10(mp_obj_t z_obj) {
mp_float_t real, imag;
mp_obj_get_complex(z_obj, &real, &imag);
- return mp_obj_new_complex(0.5 * MICROPY_FLOAT_C_FUN(log10)(real*real + imag*imag), 0.4342944819032518 * MICROPY_FLOAT_C_FUN(atan2)(imag, real));
+ return mp_obj_new_complex(0.5 * MICROPY_FLOAT_C_FUN(log10)(real * real + imag * imag), 0.4342944819032518 * MICROPY_FLOAT_C_FUN(atan2)(imag, real));
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_cmath_log10_obj, mp_cmath_log10);
#endif
@@ -90,7 +90,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_cmath_log10_obj, mp_cmath_log10);
STATIC mp_obj_t mp_cmath_sqrt(mp_obj_t z_obj) {
mp_float_t real, imag;
mp_obj_get_complex(z_obj, &real, &imag);
- mp_float_t sqrt_abs = MICROPY_FLOAT_C_FUN(pow)(real*real + imag*imag, 0.25);
+ mp_float_t sqrt_abs = MICROPY_FLOAT_C_FUN(pow)(real * real + imag * imag, 0.25);
mp_float_t theta = 0.5 * MICROPY_FLOAT_C_FUN(atan2)(imag, real);
return mp_obj_new_complex(sqrt_abs * MICROPY_FLOAT_C_FUN(cos)(theta), sqrt_abs * MICROPY_FLOAT_C_FUN(sin)(theta));
}
@@ -125,28 +125,28 @@ STATIC const mp_rom_map_elem_t mp_module_cmath_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_log10), MP_ROM_PTR(&mp_cmath_log10_obj) },
#endif
{ MP_ROM_QSTR(MP_QSTR_sqrt), MP_ROM_PTR(&mp_cmath_sqrt_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_acos), MP_ROM_PTR(&mp_cmath_acos_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_asin), MP_ROM_PTR(&mp_cmath_asin_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_atan), MP_ROM_PTR(&mp_cmath_atan_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_acos), MP_ROM_PTR(&mp_cmath_acos_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_asin), MP_ROM_PTR(&mp_cmath_asin_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_atan), MP_ROM_PTR(&mp_cmath_atan_obj) },
{ MP_ROM_QSTR(MP_QSTR_cos), MP_ROM_PTR(&mp_cmath_cos_obj) },
{ MP_ROM_QSTR(MP_QSTR_sin), MP_ROM_PTR(&mp_cmath_sin_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_tan), MP_ROM_PTR(&mp_cmath_tan_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_acosh), MP_ROM_PTR(&mp_cmath_acosh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_asinh), MP_ROM_PTR(&mp_cmath_asinh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_atanh), MP_ROM_PTR(&mp_cmath_atanh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_cosh), MP_ROM_PTR(&mp_cmath_cosh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_sinh), MP_ROM_PTR(&mp_cmath_sinh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_tanh), MP_ROM_PTR(&mp_cmath_tanh_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_isfinite), MP_ROM_PTR(&mp_cmath_isfinite_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_isinf), MP_ROM_PTR(&mp_cmath_isinf_obj) },
- //{ MP_ROM_QSTR(MP_QSTR_isnan), MP_ROM_PTR(&mp_cmath_isnan_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_tan), MP_ROM_PTR(&mp_cmath_tan_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_acosh), MP_ROM_PTR(&mp_cmath_acosh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_asinh), MP_ROM_PTR(&mp_cmath_asinh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_atanh), MP_ROM_PTR(&mp_cmath_atanh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_cosh), MP_ROM_PTR(&mp_cmath_cosh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_sinh), MP_ROM_PTR(&mp_cmath_sinh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_tanh), MP_ROM_PTR(&mp_cmath_tanh_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_isfinite), MP_ROM_PTR(&mp_cmath_isfinite_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_isinf), MP_ROM_PTR(&mp_cmath_isinf_obj) },
+ // { MP_ROM_QSTR(MP_QSTR_isnan), MP_ROM_PTR(&mp_cmath_isnan_obj) },
};
STATIC MP_DEFINE_CONST_DICT(mp_module_cmath_globals, mp_module_cmath_globals_table);
const mp_obj_module_t mp_module_cmath = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_cmath_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_cmath_globals,
};
#endif // MICROPY_PY_BUILTINS_FLOAT && MICROPY_PY_CMATH
diff --git a/py/modcollections.c b/py/modcollections.c
index 9634c5ce7..235745f58 100644
--- a/py/modcollections.c
+++ b/py/modcollections.c
@@ -43,7 +43,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_collections_globals, mp_module_collections
const mp_obj_module_t mp_module_collections = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_collections_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_collections_globals,
};
#endif // MICROPY_PY_COLLECTIONS
diff --git a/py/modgc.c b/py/modgc.c
index b01876422..e655cfa93 100644
--- a/py/modgc.c
+++ b/py/modgc.c
@@ -33,11 +33,11 @@
// collect(): run a garbage collection
STATIC mp_obj_t py_gc_collect(void) {
gc_collect();
-#if MICROPY_PY_GC_COLLECT_RETVAL
+ #if MICROPY_PY_GC_COLLECT_RETVAL
return MP_OBJ_NEW_SMALL_INT(MP_STATE_MEM(gc_collected));
-#else
+ #else
return mp_const_none;
-#endif
+ #endif
}
MP_DEFINE_CONST_FUN_OBJ_0(gc_collect_obj, py_gc_collect);
@@ -112,7 +112,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_gc_globals, mp_module_gc_globals_table);
const mp_obj_module_t mp_module_gc = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_gc_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_gc_globals,
};
#endif
diff --git a/py/modio.c b/py/modio.c
index 4bcc3971e..01cb65af5 100644
--- a/py/modio.c
+++ b/py/modio.c
@@ -72,7 +72,7 @@ STATIC mp_uint_t iobase_read(mp_obj_t obj, void *buf, mp_uint_t size, int *errco
}
STATIC mp_uint_t iobase_write(mp_obj_t obj, const void *buf, mp_uint_t size, int *errcode) {
- return iobase_read_write(obj, (void*)buf, size, errcode, MP_QSTR_write);
+ return iobase_read_write(obj, (void *)buf, size, errcode, MP_QSTR_write);
}
STATIC mp_uint_t iobase_ioctl(mp_obj_t obj, mp_uint_t request, uintptr_t arg, int *errcode) {
@@ -145,7 +145,7 @@ STATIC mp_uint_t bufwriter_write(mp_obj_t self_in, const void *buf, mp_uint_t si
// is word-aligned, to guard against obscure cases when it matters, e.g.
// https://github.com/micropython/micropython/issues/1863
memcpy(self->buf + self->len, buf, rem);
- buf = (byte*)buf + rem;
+ buf = (byte *)buf + rem;
size -= rem;
mp_uint_t out_sz = mp_stream_write_exactly(self->stream, self->buf, self->alloc, errcode);
if (*errcode != 0) {
@@ -195,7 +195,7 @@ STATIC const mp_obj_type_t bufwriter_type = {
.name = MP_QSTR_BufferedWriter,
.make_new = bufwriter_make_new,
.protocol = &bufwriter_stream_p,
- .locals_dict = (mp_obj_dict_t*)&bufwriter_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&bufwriter_locals_dict,
};
#endif // MICROPY_PY_IO_BUFFEREDWRITER
@@ -238,14 +238,14 @@ STATIC mp_obj_t resource_stream(mp_obj_t package_in, mp_obj_t path_in) {
mp_obj_stringio_t *o = m_new_obj(mp_obj_stringio_t);
o->base.type = &mp_type_bytesio;
o->vstr = m_new_obj(vstr_t);
- vstr_init_fixed_buf(o->vstr, file_len + 1, (char*)data);
+ vstr_init_fixed_buf(o->vstr, file_len + 1, (char *)data);
o->vstr->len = file_len;
o->pos = 0;
return MP_OBJ_FROM_PTR(o);
}
mp_obj_t path_out = mp_obj_new_str(path_buf.buf, path_buf.len);
- return mp_builtin_open(1, &path_out, (mp_map_t*)&mp_const_empty_map);
+ return mp_builtin_open(1, &path_out, (mp_map_t *)&mp_const_empty_map);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_2(resource_stream_obj, resource_stream);
#endif
@@ -280,7 +280,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_io_globals, mp_module_io_globals_table);
const mp_obj_module_t mp_module_io = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_io_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_io_globals,
};
#endif
diff --git a/py/modmath.c b/py/modmath.c
index ec520bb6f..2e271aed3 100644
--- a/py/modmath.c
+++ b/py/modmath.c
@@ -61,30 +61,30 @@ STATIC mp_obj_t math_generic_2(mp_obj_t x_obj, mp_obj_t y_obj, mp_float_t (*f)(m
}
#define MATH_FUN_1(py_name, c_name) \
- STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj) { \
+ STATIC mp_obj_t mp_math_##py_name(mp_obj_t x_obj) { \
return math_generic_1(x_obj, MICROPY_FLOAT_C_FUN(c_name)); \
} \
- STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_## py_name ## _obj, mp_math_ ## py_name);
+ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_##py_name##_obj, mp_math_##py_name);
#define MATH_FUN_1_TO_BOOL(py_name, c_name) \
- STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj) { return mp_obj_new_bool(c_name(mp_obj_get_float(x_obj))); } \
- STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_## py_name ## _obj, mp_math_ ## py_name);
+ STATIC mp_obj_t mp_math_##py_name(mp_obj_t x_obj) { return mp_obj_new_bool(c_name(mp_obj_get_float(x_obj))); } \
+ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_##py_name##_obj, mp_math_##py_name);
#define MATH_FUN_1_TO_INT(py_name, c_name) \
- STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj) { return mp_obj_new_int_from_float(MICROPY_FLOAT_C_FUN(c_name)(mp_obj_get_float(x_obj))); } \
- STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_## py_name ## _obj, mp_math_ ## py_name);
+ STATIC mp_obj_t mp_math_##py_name(mp_obj_t x_obj) { return mp_obj_new_int_from_float(MICROPY_FLOAT_C_FUN(c_name)(mp_obj_get_float(x_obj))); } \
+ STATIC MP_DEFINE_CONST_FUN_OBJ_1(mp_math_##py_name##_obj, mp_math_##py_name);
#define MATH_FUN_2(py_name, c_name) \
- STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj, mp_obj_t y_obj) { \
+ STATIC mp_obj_t mp_math_##py_name(mp_obj_t x_obj, mp_obj_t y_obj) { \
return math_generic_2(x_obj, y_obj, MICROPY_FLOAT_C_FUN(c_name)); \
} \
- STATIC MP_DEFINE_CONST_FUN_OBJ_2(mp_math_## py_name ## _obj, mp_math_ ## py_name);
+ STATIC MP_DEFINE_CONST_FUN_OBJ_2(mp_math_##py_name##_obj, mp_math_##py_name);
#define MATH_FUN_2_FLT_INT(py_name, c_name) \
- STATIC mp_obj_t mp_math_ ## py_name(mp_obj_t x_obj, mp_obj_t y_obj) { \
+ STATIC mp_obj_t mp_math_##py_name(mp_obj_t x_obj, mp_obj_t y_obj) { \
return mp_obj_new_float(MICROPY_FLOAT_C_FUN(c_name)(mp_obj_get_float(x_obj), mp_obj_get_int(y_obj))); \
} \
- STATIC MP_DEFINE_CONST_FUN_OBJ_2(mp_math_## py_name ## _obj, mp_math_ ## py_name);
+ STATIC MP_DEFINE_CONST_FUN_OBJ_2(mp_math_##py_name##_obj, mp_math_##py_name);
#if MP_NEED_LOG2
#undef log2
@@ -148,7 +148,7 @@ STATIC mp_float_t MICROPY_FLOAT_C_FUN(fabs_func)(mp_float_t x) {
}
MATH_FUN_1(fabs, fabs_func)
// floor(x)
-MATH_FUN_1_TO_INT(floor, floor) //TODO: delegate to x.__floor__() if x is not a float
+MATH_FUN_1_TO_INT(floor, floor) // TODO: delegate to x.__floor__() if x is not a float
// fmod(x, y)
MATH_FUN_2(fmod, fmod)
// isfinite(x)
@@ -171,7 +171,7 @@ MATH_FUN_1(gamma, tgamma)
// lgamma(x): return the natural logarithm of the gamma function of x
MATH_FUN_1(lgamma, lgamma)
#endif
-//TODO: factorial, fsum
+// TODO: factorial, fsum
// Function that takes a variable number of arguments
@@ -189,10 +189,10 @@ STATIC mp_obj_t mp_math_log(size_t n_args, const mp_obj_t *args) {
if (base <= (mp_float_t)0.0) {
math_error();
// Turn off warning when comparing exactly with integral value 1.0
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wfloat-equal"
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wfloat-equal"
} else if (base == (mp_float_t)1.0) {
-#pragma GCC diagnostic pop
+ #pragma GCC diagnostic pop
mp_raise_msg(&mp_type_ZeroDivisionError, translate("division by zero"));
}
return mp_obj_new_float(l / MICROPY_FLOAT_C_FUN(log)(base));
@@ -292,7 +292,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_math_globals, mp_module_math_globals_table
const mp_obj_module_t mp_module_math = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_math_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_math_globals,
};
#endif // MICROPY_PY_BUILTINS_FLOAT && MICROPY_PY_MATH
diff --git a/py/modmicropython.c b/py/modmicropython.c
index 7e29825ae..4cd9160bd 100644
--- a/py/modmicropython.c
+++ b/py/modmicropython.c
@@ -70,25 +70,25 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_0(mp_micropython_mem_peak_obj, mp_micropython_mem
mp_obj_t mp_micropython_mem_info(size_t n_args, const mp_obj_t *args) {
(void)args;
-#if MICROPY_MEM_STATS
+ #if MICROPY_MEM_STATS
mp_printf(&mp_plat_print, "mem: total=" UINT_FMT ", current=" UINT_FMT ", peak=" UINT_FMT "\n",
(mp_uint_t)m_get_total_bytes_allocated(), (mp_uint_t)m_get_current_bytes_allocated(), (mp_uint_t)m_get_peak_bytes_allocated());
-#endif
-#if MICROPY_STACK_CHECK
+ #endif
+ #if MICROPY_STACK_CHECK
mp_printf(&mp_plat_print, "stack: " UINT_FMT " out of " UINT_FMT "\n",
mp_stack_usage(), (mp_uint_t)MP_STATE_THREAD(stack_limit));
-#else
+ #else
mp_printf(&mp_plat_print, "stack: " UINT_FMT "\n", mp_stack_usage());
-#endif
-#if MICROPY_ENABLE_GC
+ #endif
+ #if MICROPY_ENABLE_GC
gc_dump_info();
if (n_args == 1) {
// arg given means dump gc allocation table
gc_dump_alloc_table();
}
-#else
+ #else
(void)n_args;
-#endif
+ #endif
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_micropython_mem_info_obj, 0, 1, mp_micropython_mem_info);
@@ -165,21 +165,21 @@ STATIC const mp_rom_map_elem_t mp_module_micropython_globals_table[] = {
#if MICROPY_ENABLE_COMPILER
{ MP_ROM_QSTR(MP_QSTR_opt_level), MP_ROM_PTR(&mp_micropython_opt_level_obj) },
#endif
-#if MICROPY_PY_MICROPYTHON_MEM_INFO
-#if MICROPY_MEM_STATS
+ #if MICROPY_PY_MICROPYTHON_MEM_INFO
+ #if MICROPY_MEM_STATS
{ MP_ROM_QSTR(MP_QSTR_mem_total), MP_ROM_PTR(&mp_micropython_mem_total_obj) },
{ MP_ROM_QSTR(MP_QSTR_mem_current), MP_ROM_PTR(&mp_micropython_mem_current_obj) },
{ MP_ROM_QSTR(MP_QSTR_mem_peak), MP_ROM_PTR(&mp_micropython_mem_peak_obj) },
-#endif
+ #endif
{ MP_ROM_QSTR(MP_QSTR_mem_info), MP_ROM_PTR(&mp_micropython_mem_info_obj) },
{ MP_ROM_QSTR(MP_QSTR_qstr_info), MP_ROM_PTR(&mp_micropython_qstr_info_obj) },
-#endif
+ #endif
#if MICROPY_PY_MICROPYTHON_STACK_USE
{ MP_ROM_QSTR(MP_QSTR_stack_use), MP_ROM_PTR(&mp_micropython_stack_use_obj) },
#endif
-#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF && (MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE == 0)
+ #if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF && (MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE == 0)
{ MP_ROM_QSTR(MP_QSTR_alloc_emergency_exception_buf), MP_ROM_PTR(&mp_alloc_emergency_exception_buf_obj) },
-#endif
+ #endif
#if MICROPY_ENABLE_PYSTACK
{ MP_ROM_QSTR(MP_QSTR_pystack_use), MP_ROM_PTR(&mp_micropython_pystack_use_obj) },
#endif
@@ -199,5 +199,5 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_micropython_globals, mp_module_micropython
const mp_obj_module_t mp_module_micropython = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_micropython_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_micropython_globals,
};
diff --git a/py/modstruct.c b/py/modstruct.c
index 7675de275..1c5319608 100644
--- a/py/modstruct.c
+++ b/py/modstruct.c
@@ -186,11 +186,11 @@ STATIC void struct_pack_into_internal(mp_obj_t fmt_in, byte *p, size_t n_args, c
size_t size;
size_t count = calc_size_items(mp_obj_str_get_str(fmt_in), &size);
if (count != n_args) {
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
mp_raise_ValueError(NULL);
-#else
+ #else
mp_raise_ValueError_varg(translate("pack expected %d items for packing (got %d)"), count, n_args);
-#endif
+ #endif
}
const char *fmt = mp_obj_str_get_str(fmt_in);
char fmt_type = get_fmt_type(&fmt);
@@ -229,7 +229,7 @@ STATIC mp_obj_t struct_pack(size_t n_args, const mp_obj_t *args) {
mp_int_t size = MP_OBJ_SMALL_INT_VALUE(struct_calcsize(args[0]));
vstr_t vstr;
vstr_init_len(&vstr, size);
- byte *p = (byte*)vstr.buf;
+ byte *p = (byte *)vstr.buf;
memset(p, 0, size);
struct_pack_into_internal(args[0], p, n_args - 1, &args[1]);
return mp_obj_new_str_from_vstr(&mp_type_bytes, &vstr);
@@ -275,7 +275,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_struct_globals, mp_module_struct_globals_t
const mp_obj_module_t mp_module_ustruct = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_struct_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_struct_globals,
};
#endif
diff --git a/py/modsys.c b/py/modsys.c
index 81628683d..9cbc5e314 100644
--- a/py/modsys.c
+++ b/py/modsys.c
@@ -69,9 +69,9 @@ STATIC MP_DEFINE_ATTRTUPLE(
mp_sys_implementation_obj,
impl_fields,
2,
- MP_ROM_QSTR(MP_QSTR_circuitpython),
- MP_ROM_PTR(&mp_sys_implementation_version_info_obj)
-);
+ MP_ROM_QSTR(MP_QSTR_circuitpython),
+ MP_ROM_PTR(&mp_sys_implementation_version_info_obj)
+ );
#else
STATIC const mp_rom_obj_tuple_t mp_sys_implementation_obj = {
{&mp_type_tuple},
@@ -207,7 +207,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_sys_globals, mp_module_sys_globals_table);
const mp_obj_module_t mp_module_sys = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_sys_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_sys_globals,
};
#endif
diff --git a/py/modthread.c b/py/modthread.c
index 250756ef2..89b4f3fb6 100644
--- a/py/modthread.c
+++ b/py/modthread.c
@@ -122,7 +122,7 @@ STATIC MP_DEFINE_CONST_DICT(thread_lock_locals_dict, thread_lock_locals_dict_tab
STATIC const mp_obj_type_t mp_type_thread_lock = {
{ &mp_type_type },
.name = MP_QSTR_lock,
- .locals_dict = (mp_obj_dict_t*)&thread_lock_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&thread_lock_locals_dict,
};
/****************************************************************/
@@ -159,7 +159,7 @@ typedef struct _thread_entry_args_t {
STATIC void *thread_entry(void *args_in) {
// Execution begins here for a new thread. We do not have the GIL.
- thread_entry_args_t *args = (thread_entry_args_t*)args_in;
+ thread_entry_args_t *args = (thread_entry_args_t *)args_in;
mp_state_thread_t ts;
mp_thread_set_state(&ts);
@@ -195,7 +195,7 @@ STATIC void *thread_entry(void *args_in) {
} else {
// uncaught exception
// check for SystemExit
- mp_obj_base_t *exc = (mp_obj_base_t*)nlr.ret_val;
+ mp_obj_base_t *exc = (mp_obj_base_t *)nlr.ret_val;
if (mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(exc->type), MP_OBJ_FROM_PTR(&mp_type_SystemExit))) {
// swallow exception silently
} else {
@@ -239,7 +239,7 @@ STATIC mp_obj_t mod_thread_start_new_thread(size_t n_args, const mp_obj_t *args)
if (mp_obj_get_type(args[2]) != &mp_type_dict) {
mp_raise_TypeError(translate("expecting a dict for keyword args"));
}
- mp_map_t *map = &((mp_obj_dict_t*)MP_OBJ_TO_PTR(args[2]))->map;
+ mp_map_t *map = &((mp_obj_dict_t *)MP_OBJ_TO_PTR(args[2]))->map;
th_args = m_new_obj_var(thread_entry_args_t, mp_obj_t, pos_args_len + 2 * map->used);
th_args->n_kw = map->used;
// copy across the keyword arguments
@@ -296,7 +296,7 @@ STATIC MP_DEFINE_CONST_DICT(mp_module_thread_globals, mp_module_thread_globals_t
const mp_obj_module_t mp_module_thread = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_thread_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_thread_globals,
};
#endif // MICROPY_PY_THREAD
diff --git a/py/moduerrno.c b/py/moduerrno.c
index 3928f8cd8..6ead6a805 100644
--- a/py/moduerrno.c
+++ b/py/moduerrno.c
@@ -65,9 +65,9 @@
#if MICROPY_PY_UERRNO_ERRORCODE
STATIC const mp_rom_map_elem_t errorcode_table[] = {
- #define X(e) { MP_ROM_INT(MP_ ## e), MP_ROM_QSTR(MP_QSTR_## e) },
+ #define X(e) { MP_ROM_INT(MP_##e), MP_ROM_QSTR(MP_QSTR_##e) },
MICROPY_PY_UERRNO_LIST
- #undef X
+#undef X
};
STATIC const mp_obj_dict_t errorcode_dict = {
@@ -78,38 +78,38 @@ STATIC const mp_obj_dict_t errorcode_dict = {
.is_ordered = 1,
.used = MP_ARRAY_SIZE(errorcode_table),
.alloc = MP_ARRAY_SIZE(errorcode_table),
- .table = (mp_map_elem_t*)(mp_rom_map_elem_t*)errorcode_table,
+ .table = (mp_map_elem_t *)(mp_rom_map_elem_t *)errorcode_table,
},
};
#endif
STATIC const mp_rom_map_elem_t mp_module_uerrno_globals_table[] = {
-#if CIRCUITPY
+ #if CIRCUITPY
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_errno) },
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_uerrno) },
-#endif
+ #endif
#if MICROPY_PY_UERRNO_ERRORCODE
{ MP_ROM_QSTR(MP_QSTR_errorcode), MP_ROM_PTR(&errorcode_dict) },
#endif
- #define X(e) { MP_ROM_QSTR(MP_QSTR_## e), MP_ROM_INT(MP_ ## e) },
+ #define X(e) { MP_ROM_QSTR(MP_QSTR_##e), MP_ROM_INT(MP_##e) },
MICROPY_PY_UERRNO_LIST
- #undef X
+#undef X
};
STATIC MP_DEFINE_CONST_DICT(mp_module_uerrno_globals, mp_module_uerrno_globals_table);
const mp_obj_module_t mp_module_uerrno = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&mp_module_uerrno_globals,
+ .globals = (mp_obj_dict_t *)&mp_module_uerrno_globals,
};
-const char* mp_errno_to_str(mp_obj_t errno_val) {
+const char *mp_errno_to_str(mp_obj_t errno_val) {
// Otherwise, return the Exxxx string for that error code
#if MICROPY_PY_UERRNO_ERRORCODE
// We have the errorcode dict so can do a lookup using the hash map
- mp_map_elem_t *elem = mp_map_lookup((mp_map_t*)&errorcode_dict.map, errno_val, MP_MAP_LOOKUP);
+ mp_map_elem_t *elem = mp_map_lookup((mp_map_t *)&errorcode_dict.map, errno_val, MP_MAP_LOOKUP);
if (elem == NULL) {
return "";
} else {
@@ -126,18 +126,18 @@ const char* mp_errno_to_str(mp_obj_t errno_val) {
#endif
}
-#else //MICROPY_PY_UERRNO
+#else // MICROPY_PY_UERRNO
-const char* mp_errno_to_str(mp_obj_t errno_val) {
+const char *mp_errno_to_str(mp_obj_t errno_val) {
int v = MP_OBJ_SMALL_INT_VALUE(errno_val);
- #define X(e) if (v == e) return qstr_str(MP_QSTR_ ## e);
+ #define X(e) if (v == e) return qstr_str(MP_QSTR_##e);
MICROPY_PY_UERRNO_LIST
- #undef X
+#undef X
return "";
}
-#endif //MICROPY_PY_UERRNO
+#endif // MICROPY_PY_UERRNO
// For commonly encountered errors, return human readable strings, otherwise try errno name
@@ -146,17 +146,35 @@ const char *mp_common_errno_to_str(mp_obj_t errno_val, char *buf, size_t len) {
return NULL;
}
- const compressed_string_t* desc = NULL;
+ const compressed_string_t *desc = NULL;
switch (MP_OBJ_SMALL_INT_VALUE(errno_val)) {
- case EPERM: desc = translate("Permission denied"); break;
- case ENOENT: desc = translate("No such file/directory"); break;
- case EIO: desc = translate("Input/output error"); break;
- case EACCES: desc = translate("Permission denied"); break;
- case EEXIST: desc = translate("File exists"); break;
- case ENODEV: desc = translate("Unsupported operation"); break;
- case EINVAL: desc = translate("Invalid argument"); break;
- case ENOSPC: desc = translate("No space left on device"); break;
- case EROFS: desc = translate("Read-only filesystem"); break;
+ case EPERM:
+ desc = translate("Permission denied");
+ break;
+ case ENOENT:
+ desc = translate("No such file/directory");
+ break;
+ case EIO:
+ desc = translate("Input/output error");
+ break;
+ case EACCES:
+ desc = translate("Permission denied");
+ break;
+ case EEXIST:
+ desc = translate("File exists");
+ break;
+ case ENODEV:
+ desc = translate("Unsupported operation");
+ break;
+ case EINVAL:
+ desc = translate("Invalid argument");
+ break;
+ case ENOSPC:
+ desc = translate("No space left on device");
+ break;
+ case EROFS:
+ desc = translate("Read-only filesystem");
+ break;
}
if (desc != NULL && decompress_length(desc) <= len) {
decompress(desc, buf);
diff --git a/py/mpconfig.h b/py/mpconfig.h
index 1f6f96bd1..043386d7c 100755..100644
--- a/py/mpconfig.h
+++ b/py/mpconfig.h
@@ -512,9 +512,9 @@
#define MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF (0)
#endif
#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
-# ifndef MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE
-# define MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE (0) // 0 - implies dynamic allocation
-# endif
+#ifndef MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE
+#define MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE (0) // 0 - implies dynamic allocation
+#endif
#endif
// Whether to provide the mp_kbd_exception object, and micropython.kbd_intr function
@@ -1370,7 +1370,7 @@ typedef double mp_float_t;
#elif defined(MP_ENDIANNESS_BIG)
#define MP_ENDIANNESS_LITTLE (!MP_ENDIANNESS_BIG)
#else
- // Endianness not defined by port so try to autodetect it.
+// Endianness not defined by port so try to autodetect it.
#if defined(__BYTE_ORDER__)
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
#define MP_ENDIANNESS_LITTLE (1)
@@ -1433,7 +1433,7 @@ typedef double mp_float_t;
#define UINT_FMT "%u"
#define INT_FMT "%d"
#endif
-#endif //INT_FMT
+#endif // INT_FMT
// Modifier for function which doesn't return
#ifndef NORETURN
@@ -1476,21 +1476,21 @@ typedef double mp_float_t;
#ifndef MP_HTOBE16
#if MP_ENDIANNESS_LITTLE
-# define MP_HTOBE16(x) ((uint16_t)( (((x) & 0xff) << 8) | (((x) >> 8) & 0xff) ))
-# define MP_BE16TOH(x) MP_HTOBE16(x)
+#define MP_HTOBE16(x) ((uint16_t)((((x) & 0xff) << 8) | (((x) >> 8) & 0xff)))
+#define MP_BE16TOH(x) MP_HTOBE16(x)
#else
-# define MP_HTOBE16(x) (x)
-# define MP_BE16TOH(x) (x)
+#define MP_HTOBE16(x) (x)
+#define MP_BE16TOH(x) (x)
#endif
#endif
#ifndef MP_HTOBE32
#if MP_ENDIANNESS_LITTLE
-# define MP_HTOBE32(x) ((uint32_t)( (((x) & 0xff) << 24) | (((x) & 0xff00) << 8) | (((x) >> 8) & 0xff00) | (((x) >> 24) & 0xff) ))
-# define MP_BE32TOH(x) MP_HTOBE32(x)
+#define MP_HTOBE32(x) ((uint32_t)((((x) & 0xff) << 24) | (((x) & 0xff00) << 8) | (((x) >> 8) & 0xff00) | (((x) >> 24) & 0xff)))
+#define MP_BE32TOH(x) MP_HTOBE32(x)
#else
-# define MP_HTOBE32(x) (x)
-# define MP_BE32TOH(x) (x)
+#define MP_HTOBE32(x) (x)
+#define MP_BE32TOH(x) (x)
#endif
#endif
diff --git a/py/mperrno.h b/py/mperrno.h
index e339fde85..02c618958 100644
--- a/py/mperrno.h
+++ b/py/mperrno.h
@@ -140,7 +140,7 @@
#endif
-const char* mp_errno_to_str(mp_obj_t errno_val);
+const char *mp_errno_to_str(mp_obj_t errno_val);
const char *mp_common_errno_to_str(mp_obj_t errno_val, char *buf, size_t len);
#endif // MICROPY_INCLUDED_PY_MPERRNO_H
diff --git a/py/mpprint.c b/py/mpprint.c
index e814d2ebe..032ce8e97 100644
--- a/py/mpprint.c
+++ b/py/mpprint.c
@@ -269,14 +269,14 @@ int mp_print_mp_int(const mp_print_t *print, mp_obj_t x, int base, int base_char
// We add the pad in this function, so since the pad goes after
// the sign & prefix, we format without a prefix
str = mp_obj_int_formatted(&buf, &buf_size, &fmt_size,
- x, base, NULL, base_char, comma);
+ x, base, NULL, base_char, comma);
if (*str == '-') {
sign = *str++;
fmt_size--;
}
} else {
str = mp_obj_int_formatted(&buf, &buf_size, &fmt_size,
- x, base, prefix, base_char, comma);
+ x, base, prefix, base_char, comma);
}
int spaces_before = 0;
@@ -347,8 +347,7 @@ int mp_print_float(const mp_print_t *print, mp_float_t f, char fmt, int flags, c
if (flags & PF_FLAG_SHOW_SIGN) {
sign = '+';
- }
- else
+ } else
if (flags & PF_FLAG_SPACE_SIGN) {
sign = ' ';
}
@@ -411,14 +410,20 @@ int mp_vprintf(const mp_print_t *print, const char *fmt, va_list args) {
int flags = 0;
char fill = ' ';
while (*fmt != '\0') {
- if (*fmt == '-') flags |= PF_FLAG_LEFT_ADJUST;
- else if (*fmt == '+') flags |= PF_FLAG_SHOW_SIGN;
- else if (*fmt == ' ') flags |= PF_FLAG_SPACE_SIGN;
- else if (*fmt == '!') flags |= PF_FLAG_NO_TRAILZ;
- else if (*fmt == '0') {
+ if (*fmt == '-') {
+ flags |= PF_FLAG_LEFT_ADJUST;
+ } else if (*fmt == '+') {
+ flags |= PF_FLAG_SHOW_SIGN;
+ } else if (*fmt == ' ') {
+ flags |= PF_FLAG_SPACE_SIGN;
+ } else if (*fmt == '!') {
+ flags |= PF_FLAG_NO_TRAILZ;
+ } else if (*fmt == '0') {
flags |= PF_FLAG_PAD_AFTER_SIGN;
fill = '0';
- } else break;
+ } else {
+ break;
+ }
++fmt;
}
@@ -470,26 +475,23 @@ int mp_vprintf(const mp_print_t *print, const char *fmt, va_list args) {
chrs += mp_print_strn(print, "false", 5, flags, fill, width);
}
break;
- case 'c':
- {
+ case 'c': {
char str = va_arg(args, int);
chrs += mp_print_strn(print, &str, 1, flags, fill, width);
break;
}
- case 'q':
- {
+ case 'q': {
qstr qst = va_arg(args, qstr);
size_t len;
- const char *str = (const char*)qstr_data(qst, &len);
+ const char *str = (const char *)qstr_data(qst, &len);
if (prec < 0) {
prec = len;
}
chrs += mp_print_strn(print, str, prec, flags, fill, width);
break;
}
- case 's':
- {
- const char *str = va_arg(args, const char*);
+ case 's': {
+ const char *str = va_arg(args, const char *);
#ifndef NDEBUG
// With debugging enabled, catch printing of null string pointers
if (prec != 0 && str == NULL) {
@@ -526,26 +528,25 @@ int mp_vprintf(const mp_print_t *print, const char *fmt, va_list args) {
// Use unsigned long int to work on both ILP32 and LP64 systems
chrs += mp_print_int(print, va_arg(args, unsigned long int), 0, 16, 'a', flags, fill, width);
break;
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'e':
case 'E':
case 'f':
case 'F':
case 'g':
- case 'G':
- {
-#if ((MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT) || (MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE))
+ case 'G': {
+ #if ((MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT) || (MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE))
mp_float_t f = va_arg(args, double);
chrs += mp_print_float(print, f, *fmt, flags, fill, width, prec);
-#else
-#error Unknown MICROPY FLOAT IMPL
-#endif
+ #else
+ #error Unknown MICROPY FLOAT IMPL
+ #endif
break;
}
-#endif
- // Because 'l' is eaten above, another 'l' means %ll. We need to support
- // this length specifier for OBJ_REPR_D (64-bit NaN boxing).
- // TODO Either enable this unconditionally, or provide a specific config var.
+ #endif
+ // Because 'l' is eaten above, another 'l' means %ll. We need to support
+ // this length specifier for OBJ_REPR_D (64-bit NaN boxing).
+ // TODO Either enable this unconditionally, or provide a specific config var.
#if (MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D) || defined(_WIN64)
case 'l': {
unsigned long long int arg_value = va_arg(args, unsigned long long int);
diff --git a/py/mpprint.h b/py/mpprint.h
index 0d12b9a3d..4458ea883 100644
--- a/py/mpprint.h
+++ b/py/mpprint.h
@@ -40,9 +40,9 @@
#define PF_FLAG_SHOW_OCTAL_LETTER (0x200)
#if MICROPY_PY_IO && MICROPY_PY_SYS_STDFILES
-# define MP_PYTHON_PRINTER &mp_sys_stdout_print
+#define MP_PYTHON_PRINTER &mp_sys_stdout_print
#else
-# define MP_PYTHON_PRINTER &mp_plat_print
+#define MP_PYTHON_PRINTER &mp_plat_print
#endif
typedef void (*mp_print_strn_t)(void *data, const char *str, size_t len);
diff --git a/py/mpstate.h b/py/mpstate.h
index 32f353528..139f23cb4 100644
--- a/py/mpstate.h
+++ b/py/mpstate.h
@@ -104,7 +104,7 @@ typedef struct _mp_state_mem_t {
mp_thread_mutex_t gc_mutex;
#endif
- void** permanent_pointers;
+ void **permanent_pointers;
} mp_state_mem_t;
// This structure hold runtime and VM information. It includes a section
@@ -233,7 +233,7 @@ typedef struct _mp_state_thread_t {
char *stack_top;
#if MICROPY_MAX_STACK_USAGE
- char* stack_bottom;
+ char *stack_bottom;
#endif
#if MICROPY_STACK_CHECK
diff --git a/py/mpthread.h b/py/mpthread.h
index 3a6983e9d..bd023e627 100644
--- a/py/mpthread.h
+++ b/py/mpthread.h
@@ -40,7 +40,7 @@ struct _mp_state_thread_t;
struct _mp_state_thread_t *mp_thread_get_state(void);
void mp_thread_set_state(void *state);
-void mp_thread_create(void *(*entry)(void*), void *arg, size_t *stack_size);
+void mp_thread_create(void *(*entry)(void *), void *arg, size_t *stack_size);
void mp_thread_start(void);
void mp_thread_finish(void);
void mp_thread_mutex_init(mp_thread_mutex_t *mutex);
diff --git a/py/mpz.c b/py/mpz.c
index 41b46f92f..248d0ec35 100644
--- a/py/mpz.c
+++ b/py/mpz.c
@@ -60,13 +60,21 @@ STATIC size_t mpn_remove_trailing_zeros(mpz_dig_t *oidig, mpz_dig_t *idig) {
assumes i, j are normalised
*/
STATIC int mpn_cmp(const mpz_dig_t *idig, size_t ilen, const mpz_dig_t *jdig, size_t jlen) {
- if (ilen < jlen) { return -1; }
- if (ilen > jlen) { return 1; }
+ if (ilen < jlen) {
+ return -1;
+ }
+ if (ilen > jlen) {
+ return 1;
+ }
for (idig += ilen, jdig += ilen; ilen > 0; --ilen) {
mpz_dbl_dig_signed_t cmp = (mpz_dbl_dig_t)*(--idig) - (mpz_dbl_dig_t)*(--jdig);
- if (cmp < 0) { return -1; }
- if (cmp > 0) { return 1; }
+ if (cmp < 0) {
+ return -1;
+ }
+ if (cmp > 0) {
+ return 1;
+ }
}
return 0;
@@ -228,7 +236,7 @@ STATIC size_t mpn_and(mpz_dig_t *idig, const mpz_dig_t *jdig, const mpz_dig_t *k
can have i, j, k pointing to same memory
*/
STATIC size_t mpn_and_neg(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const mpz_dig_t *kdig, size_t klen,
- mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
+ mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
mpz_dig_t *oidig = idig;
mpz_dig_t imask = (0 == carryi) ? 0 : DIG_MASK;
mpz_dig_t jmask = (0 == carryj) ? 0 : DIG_MASK;
@@ -289,7 +297,7 @@ STATIC size_t mpn_or(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const
#if MICROPY_OPT_MPZ_BITWISE
STATIC size_t mpn_or_neg(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const mpz_dig_t *kdig, size_t klen,
- mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
+ mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
mpz_dig_t *oidig = idig;
mpz_dbl_dig_t carryi = 1;
mpz_dig_t jmask = (0 == carryj) ? 0 : DIG_MASK;
@@ -319,7 +327,7 @@ STATIC size_t mpn_or_neg(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, co
#else
STATIC size_t mpn_or_neg(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const mpz_dig_t *kdig, size_t klen,
- mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
+ mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
mpz_dig_t *oidig = idig;
mpz_dig_t imask = (0 == carryi) ? 0 : DIG_MASK;
mpz_dig_t jmask = (0 == carryj) ? 0 : DIG_MASK;
@@ -378,7 +386,7 @@ STATIC size_t mpn_xor(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const
can have i, j, k pointing to same memory
*/
STATIC size_t mpn_xor_neg(mpz_dig_t *idig, const mpz_dig_t *jdig, size_t jlen, const mpz_dig_t *kdig, size_t klen,
- mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
+ mpz_dbl_dig_t carryi, mpz_dbl_dig_t carryj, mpz_dbl_dig_t carryk) {
mpz_dig_t *oidig = idig;
for (; jlen > 0; ++idig, ++jdig) {
@@ -775,17 +783,19 @@ void mpz_set_from_ll(mpz_t *z, long long val, bool is_signed) {
#if MICROPY_PY_BUILTINS_FLOAT
void mpz_set_from_float(mpz_t *z, mp_float_t src) {
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
-typedef uint64_t mp_float_int_t;
-#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
-typedef uint32_t mp_float_int_t;
-#endif
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ typedef uint64_t mp_float_int_t;
+ #elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ typedef uint32_t mp_float_int_t;
+ #endif
union {
mp_float_t f;
#if MP_ENDIANNESS_LITTLE
- struct { mp_float_int_t frc:MP_FLOAT_FRAC_BITS, exp:MP_FLOAT_EXP_BITS, sgn:1; } p;
+ struct { mp_float_int_t frc : MP_FLOAT_FRAC_BITS, exp : MP_FLOAT_EXP_BITS, sgn : 1;
+ } p;
#else
- struct { mp_float_int_t sgn:1, exp:MP_FLOAT_EXP_BITS, frc:MP_FLOAT_FRAC_BITS; } p;
+ struct { mp_float_int_t sgn : 1, exp : MP_FLOAT_EXP_BITS, frc : MP_FLOAT_FRAC_BITS;
+ } p;
#endif
} u = {src};
@@ -829,16 +839,16 @@ typedef uint32_t mp_float_int_t;
z->dig[dig_ind++] = (frc << shft) & DIG_MASK;
frc >>= DIG_SIZE - shft;
}
-#if DIG_SIZE < (MP_FLOAT_FRAC_BITS + 1)
+ #if DIG_SIZE < (MP_FLOAT_FRAC_BITS + 1)
while (dig_ind != dig_cnt) {
z->dig[dig_ind++] = frc & DIG_MASK;
frc >>= DIG_SIZE;
}
-#else
+ #else
if (dig_ind != dig_cnt) {
z->dig[dig_ind] = frc;
}
-#endif
+ #endif
}
}
}
@@ -861,7 +871,7 @@ size_t mpz_set_from_str(mpz_t *z, const char *str, size_t len, bool neg, unsigne
z->len = 0;
for (; cur < top; ++cur) { // XXX UTF8 next char
- //mp_uint_t v = char_to_numeric(cur#); // XXX UTF8 get char
+ // mp_uint_t v = char_to_numeric(cur#); // XXX UTF8 get char
mp_uint_t v = *cur;
if ('0' <= v && v <= '9') {
v -= '0';
@@ -952,28 +962,48 @@ int mpz_cmp(const mpz_t *z1, const mpz_t *z2) {
mp_int_t mpz_cmp_sml_int(const mpz_t *z, mp_int_t sml_int) {
mp_int_t cmp;
if (z->neg == 0) {
- if (sml_int < 0) return 1;
+ if (sml_int < 0) {
+ return 1;
+ }
if (sml_int == 0) {
- if (z->len == 0) return 0;
+ if (z->len == 0) {
+ return 0;
+ }
return 1;
}
- if (z->len == 0) return -1;
+ if (z->len == 0) {
+ return -1;
+ }
assert(sml_int < (1 << DIG_SIZE));
- if (z->len != 1) return 1;
+ if (z->len != 1) {
+ return 1;
+ }
cmp = z->dig[0] - sml_int;
} else {
- if (sml_int > 0) return -1;
+ if (sml_int > 0) {
+ return -1;
+ }
if (sml_int == 0) {
- if (z->len == 0) return 0;
+ if (z->len == 0) {
+ return 0;
+ }
return -1;
}
- if (z->len == 0) return 1;
+ if (z->len == 0) {
+ return 1;
+ }
assert(sml_int > -(1 << DIG_SIZE));
- if (z->len != 1) return -1;
+ if (z->len != 1) {
+ return -1;
+ }
cmp = -z->dig[0] - sml_int;
}
- if (cmp < 0) return -1;
- if (cmp > 0) return 1;
+ if (cmp < 0) {
+ return -1;
+ }
+ if (cmp > 0) {
+ return 1;
+ }
return 0;
}
#endif
@@ -1211,7 +1241,7 @@ void mpz_and_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
} else {
mpz_need_dig(dest, lhs->len + 1);
dest->len = mpn_and_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len,
- lhs->neg == rhs->neg, 0 != lhs->neg, 0 != rhs->neg);
+ lhs->neg == rhs->neg, 0 != lhs->neg, 0 != rhs->neg);
dest->neg = lhs->neg & rhs->neg;
}
@@ -1219,7 +1249,7 @@ void mpz_and_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
mpz_need_dig(dest, lhs->len + (lhs->neg || rhs->neg));
dest->len = mpn_and_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len,
- (lhs->neg == rhs->neg) ? lhs->neg : 0, lhs->neg, rhs->neg);
+ (lhs->neg == rhs->neg) ? lhs->neg : 0, lhs->neg, rhs->neg);
dest->neg = lhs->neg & rhs->neg;
#endif
@@ -1245,7 +1275,7 @@ void mpz_or_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
} else {
mpz_need_dig(dest, lhs->len + 1);
dest->len = mpn_or_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len,
- 0 != lhs->neg, 0 != rhs->neg);
+ 0 != lhs->neg, 0 != rhs->neg);
dest->neg = 1;
}
@@ -1253,7 +1283,7 @@ void mpz_or_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
mpz_need_dig(dest, lhs->len + (lhs->neg || rhs->neg));
dest->len = mpn_or_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len,
- (lhs->neg || rhs->neg), lhs->neg, rhs->neg);
+ (lhs->neg || rhs->neg), lhs->neg, rhs->neg);
dest->neg = lhs->neg | rhs->neg;
#endif
@@ -1283,7 +1313,7 @@ void mpz_xor_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
} else {
mpz_need_dig(dest, lhs->len + 1);
dest->len = mpn_xor_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len, 1,
- 0 == lhs->neg, 0 == rhs->neg);
+ 0 == lhs->neg, 0 == rhs->neg);
dest->neg = 1;
}
@@ -1291,7 +1321,7 @@ void mpz_xor_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs) {
mpz_need_dig(dest, lhs->len + (lhs->neg || rhs->neg));
dest->len = mpn_xor_neg(dest->dig, lhs->dig, lhs->len, rhs->dig, rhs->len,
- (lhs->neg != rhs->neg), 0 == lhs->neg, 0 == rhs->neg);
+ (lhs->neg != rhs->neg), 0 == lhs->neg, 0 == rhs->neg);
dest->neg = lhs->neg ^ rhs->neg;
#endif
@@ -1380,7 +1410,8 @@ void mpz_pow3_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs, const mpz_t
mpz_t *x = mpz_clone(lhs);
mpz_t *n = mpz_clone(rhs);
- mpz_t quo; mpz_init_zero(&quo);
+ mpz_t quo;
+ mpz_init_zero(&quo);
while (n->len > 0) {
if ((n->dig[0] & 1) != 0) {
@@ -1423,7 +1454,8 @@ mpz_t *mpz_gcd(const mpz_t *z1, const mpz_t *z2) {
mpz_t *a = mpz_clone(z1);
mpz_t *b = mpz_clone(z2);
- mpz_t c; mpz_init_zero(&c);
+ mpz_t c;
+ mpz_init_zero(&c);
a->neg = 0;
b->neg = 0;
@@ -1434,7 +1466,9 @@ mpz_t *mpz_gcd(const mpz_t *z1, const mpz_t *z2) {
mpz_deinit(&c);
return b;
}
- mpz_t *t = a; a = b; b = t;
+ mpz_t *t = a;
+ a = b;
+ b = t;
}
if (!(b->len >= 2 || (b->len == 1 && b->dig[0] > 1))) { // compute b > 0; could be mpz_cmp_small_int(b, 1) > 0
break;
@@ -1501,7 +1535,8 @@ void mpz_divmod_inpl(mpz_t *dest_quo, mpz_t *dest_rem, const mpz_t *lhs, const m
if (lhs->neg != rhs->neg) {
dest_quo->neg = 1;
if (!mpz_is_zero(dest_rem)) {
- mpz_t mpzone; mpz_init_from_int(&mpzone, -1);
+ mpz_t mpzone;
+ mpz_init_from_int(&mpzone, -1);
mpz_add_inpl(dest_quo, dest_quo, &mpzone);
mpz_add_inpl(dest_rem, dest_rem, rhs);
}
@@ -1516,7 +1551,8 @@ these functions are unused
*/
mpz_t *mpz_div(const mpz_t *lhs, const mpz_t *rhs) {
mpz_t *quo = mpz_zero();
- mpz_t rem; mpz_init_zero(&rem);
+ mpz_t rem;
+ mpz_init_zero(&rem);
mpz_divmod_inpl(quo, &rem, lhs, rhs);
mpz_deinit(&rem);
return quo;
@@ -1526,7 +1562,8 @@ mpz_t *mpz_div(const mpz_t *lhs, const mpz_t *rhs) {
can have lhs, rhs the same
*/
mpz_t *mpz_mod(const mpz_t *lhs, const mpz_t *rhs) {
- mpz_t quo; mpz_init_zero(&quo);
+ mpz_t quo;
+ mpz_init_zero(&quo);
mpz_t *rem = mpz_zero();
mpz_divmod_inpl(&quo, rem, lhs, rhs);
mpz_deinit(&quo);
@@ -1663,8 +1700,9 @@ size_t mpz_as_str_inpl(const mpz_t *i, unsigned int base, const char *prefix, ch
char *s = str;
if (ilen == 0) {
if (prefix) {
- while (*prefix)
+ while (*prefix) {
*s++ = *prefix++;
+ }
}
*s++ = '0';
*s = '\0';
diff --git a/py/mpz.h b/py/mpz.h
index ade04a4f7..6b941cb7b 100644
--- a/py/mpz.h
+++ b/py/mpz.h
@@ -46,10 +46,10 @@
#ifndef MPZ_DIG_SIZE
#if defined(__x86_64__) || defined(_WIN64)
- // 64-bit machine, using 32-bit storage for digits
+// 64-bit machine, using 32-bit storage for digits
#define MPZ_DIG_SIZE (32)
#else
- // default: 32-bit machine, using 16-bit storage for digits
+// default: 32-bit machine, using 16-bit storage for digits
#define MPZ_DIG_SIZE (16)
#endif
#endif
@@ -99,7 +99,7 @@ typedef struct _mpz_t {
} mpz_t;
// convenience macro to declare an mpz with a digit array from the stack, initialised by an integer
-#define MPZ_CONST_INT(z, val) mpz_t z; mpz_dig_t z ## _digits[MPZ_NUM_DIG_FOR_INT]; mpz_init_fixed_from_int(&z, z_digits, MPZ_NUM_DIG_FOR_INT, val);
+#define MPZ_CONST_INT(z, val) mpz_t z; mpz_dig_t z##_digits[MPZ_NUM_DIG_FOR_INT]; mpz_init_fixed_from_int(&z, z_digits, MPZ_NUM_DIG_FOR_INT, val);
void mpz_init_zero(mpz_t *z);
void mpz_init_from_int(mpz_t *z, mp_int_t val);
@@ -115,8 +115,12 @@ void mpz_set_from_float(mpz_t *z, mp_float_t src);
size_t mpz_set_from_str(mpz_t *z, const char *str, size_t len, bool neg, unsigned int base);
void mpz_set_from_bytes(mpz_t *z, bool big_endian, size_t len, const byte *buf);
-static inline bool mpz_is_zero(const mpz_t *z) { return z->len == 0; }
-static inline bool mpz_is_neg(const mpz_t *z) { return z->len != 0 && z->neg != 0; }
+static inline bool mpz_is_zero(const mpz_t *z) {
+ return z->len == 0;
+}
+static inline bool mpz_is_neg(const mpz_t *z) {
+ return z->len != 0 && z->neg != 0;
+}
int mpz_cmp(const mpz_t *lhs, const mpz_t *rhs);
void mpz_abs_inpl(mpz_t *dest, const mpz_t *z);
@@ -134,10 +138,13 @@ void mpz_or_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs);
void mpz_xor_inpl(mpz_t *dest, const mpz_t *lhs, const mpz_t *rhs);
void mpz_divmod_inpl(mpz_t *dest_quo, mpz_t *dest_rem, const mpz_t *lhs, const mpz_t *rhs);
-static inline size_t mpz_max_num_bits(const mpz_t *z) { return z->len * MPZ_DIG_SIZE; }
+static inline size_t mpz_max_num_bits(const mpz_t *z) {
+ return z->len * MPZ_DIG_SIZE;
+}
static inline size_t mpz_num_bits(const mpz_t *z) {
- size_t last_bits = (8 * (sizeof(long) - sizeof(mpz_dig_t))) - __builtin_clzl(z->dig[z->len-1]);
- return z->len * MPZ_DIG_SIZE + last_bits; }
+ size_t last_bits = (8 * (sizeof(long) - sizeof(mpz_dig_t))) - __builtin_clzl(z->dig[z->len - 1]);
+ return z->len * MPZ_DIG_SIZE + last_bits;
+}
mp_int_t mpz_hash(const mpz_t *z);
bool mpz_as_int_checked(const mpz_t *z, mp_int_t *value);
bool mpz_as_uint_checked(const mpz_t *z, mp_uint_t *value);
diff --git a/py/nativeglue.c b/py/nativeglue.c
index 9ac806009..05e257ab0 100644
--- a/py/nativeglue.c
+++ b/py/nativeglue.c
@@ -45,10 +45,12 @@
mp_uint_t mp_convert_obj_to_native(mp_obj_t obj, mp_uint_t type) {
DEBUG_printf("mp_convert_obj_to_native(%p, " UINT_FMT ")\n", obj, type);
switch (type & 0xf) {
- case MP_NATIVE_TYPE_OBJ: return (mp_uint_t)obj;
+ case MP_NATIVE_TYPE_OBJ:
+ return (mp_uint_t)obj;
case MP_NATIVE_TYPE_BOOL:
case MP_NATIVE_TYPE_INT:
- case MP_NATIVE_TYPE_UINT: return mp_obj_get_int_truncated(obj);
+ case MP_NATIVE_TYPE_UINT:
+ return mp_obj_get_int_truncated(obj);
default: { // cast obj to a pointer
mp_buffer_info_t bufinfo;
if (mp_get_buffer(obj, &bufinfo, MP_BUFFER_RW)) {
@@ -69,10 +71,14 @@ mp_uint_t mp_convert_obj_to_native(mp_obj_t obj, mp_uint_t type) {
mp_obj_t mp_convert_native_to_obj(mp_uint_t val, mp_uint_t type) {
DEBUG_printf("mp_convert_native_to_obj(" UINT_FMT ", " UINT_FMT ")\n", val, type);
switch (type & 0xf) {
- case MP_NATIVE_TYPE_OBJ: return (mp_obj_t)val;
- case MP_NATIVE_TYPE_BOOL: return mp_obj_new_bool(val);
- case MP_NATIVE_TYPE_INT: return mp_obj_new_int(val);
- case MP_NATIVE_TYPE_UINT: return mp_obj_new_int_from_uint(val);
+ case MP_NATIVE_TYPE_OBJ:
+ return (mp_obj_t)val;
+ case MP_NATIVE_TYPE_BOOL:
+ return mp_obj_new_bool(val);
+ case MP_NATIVE_TYPE_INT:
+ return mp_obj_new_int(val);
+ case MP_NATIVE_TYPE_UINT:
+ return mp_obj_new_int_from_uint(val);
default: // a pointer
// we return just the value of the pointer as an integer
return mp_obj_new_int_from_uint(val);
@@ -145,10 +151,10 @@ void *const mp_fun_table[MP_F_NUMBER_OF] = {
mp_obj_list_append,
mp_obj_new_dict,
mp_obj_dict_store,
-#if MICROPY_PY_BUILTINS_SET
+ #if MICROPY_PY_BUILTINS_SET
mp_obj_set_store,
mp_obj_new_set,
-#endif
+ #endif
mp_make_function_from_raw_code,
mp_native_call_function_n_kw,
mp_call_method_n_kw,
@@ -161,9 +167,9 @@ void *const mp_fun_table[MP_F_NUMBER_OF] = {
mp_import_name,
mp_import_from,
mp_import_all,
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
mp_obj_new_slice,
-#endif
+ #endif
mp_unpack_sequence,
mp_unpack_ex,
mp_delete_name,
diff --git a/py/nlr.c b/py/nlr.c
index 95d833177..6dfd16219 100644
--- a/py/nlr.c
+++ b/py/nlr.c
@@ -30,7 +30,7 @@
// When not using setjmp, nlr_push_tail is called from inline asm so needs special care
#if defined(MICROPY_NLR_X86) && MICROPY_NLR_X86 && defined(MICROPY_NLR_OS_WINDOWS) && MICROPY_NLR_OS_WINDOWS
// On these 32-bit platforms make sure nlr_push_tail doesn't have a leading underscore
-unsigned int nlr_push_tail(nlr_buf_t *nlr) asm("nlr_push_tail");
+unsigned int nlr_push_tail(nlr_buf_t *nlr) asm ("nlr_push_tail");
#else
// LTO can't see inside inline asm functions so explicitly mark nlr_push_tail as used
__attribute__((used)) unsigned int nlr_push_tail(nlr_buf_t *nlr);
diff --git a/py/nlr.h b/py/nlr.h
index aed24e277..00f10b75f 100644
--- a/py/nlr.h
+++ b/py/nlr.h
@@ -57,9 +57,9 @@
#if defined(__SOFTFP__)
#define MICROPY_NLR_NUM_REGS (10)
#else
- // With hardware FP registers s16-s31 are callee save so in principle
- // should be saved and restored by the NLR code. gcc only uses s16-s21
- // so only save/restore those as an optimisation.
+// With hardware FP registers s16-s31 are callee save so in principle
+// should be saved and restored by the NLR code. gcc only uses s16-s21
+// so only save/restore those as an optimisation.
#define MICROPY_NLR_NUM_REGS (10 + 6)
#endif
#elif defined(__xtensa__)
@@ -67,7 +67,7 @@
#define MICROPY_NLR_NUM_REGS (10)
#else
#define MICROPY_NLR_SETJMP (1)
- //#warning "No native NLR support for this arch, using setjmp implementation"
+// #warning "No native NLR support for this arch, using setjmp implementation"
#endif
#endif
diff --git a/py/nlrthumb.c b/py/nlrthumb.c
index 464995fa8..1cdc2f063 100644
--- a/py/nlrthumb.c
+++ b/py/nlrthumb.c
@@ -39,53 +39,53 @@
__attribute__((naked)) unsigned int nlr_push(nlr_buf_t *nlr) {
__asm volatile (
- "str r4, [r0, #12] \n" // store r4 into nlr_buf
- "str r5, [r0, #16] \n" // store r5 into nlr_buf
- "str r6, [r0, #20] \n" // store r6 into nlr_buf
- "str r7, [r0, #24] \n" // store r7 into nlr_buf
+ "str r4, [r0, #12] \n" // store r4 into nlr_buf
+ "str r5, [r0, #16] \n" // store r5 into nlr_buf
+ "str r6, [r0, #20] \n" // store r6 into nlr_buf
+ "str r7, [r0, #24] \n" // store r7 into nlr_buf
-#if defined(__ARM_ARCH_6M__)
- "mov r1, r8 \n"
- "str r1, [r0, #28] \n" // store r8 into nlr_buf
- "mov r1, r9 \n"
- "str r1, [r0, #32] \n" // store r9 into nlr_buf
- "mov r1, r10 \n"
- "str r1, [r0, #36] \n" // store r10 into nlr_buf
- "mov r1, r11 \n"
- "str r1, [r0, #40] \n" // store r11 into nlr_buf
- "mov r1, r13 \n"
- "str r1, [r0, #44] \n" // store r13=sp into nlr_buf
- "mov r1, lr \n"
- "str r1, [r0, #8] \n" // store lr into nlr_buf
-#else
- "str r8, [r0, #28] \n" // store r8 into nlr_buf
- "str r9, [r0, #32] \n" // store r9 into nlr_buf
- "str r10, [r0, #36] \n" // store r10 into nlr_buf
- "str r11, [r0, #40] \n" // store r11 into nlr_buf
- "str r13, [r0, #44] \n" // store r13=sp into nlr_buf
- #if MICROPY_NLR_NUM_REGS == 16
- "vstr d8, [r0, #48] \n" // store s16-s17 into nlr_buf
- "vstr d9, [r0, #56] \n" // store s18-s19 into nlr_buf
- "vstr d10, [r0, #64] \n" // store s20-s21 into nlr_buf
- #endif
- "str lr, [r0, #8] \n" // store lr into nlr_buf
-#endif
+ #if defined(__ARM_ARCH_6M__)
+ "mov r1, r8 \n"
+ "str r1, [r0, #28] \n" // store r8 into nlr_buf
+ "mov r1, r9 \n"
+ "str r1, [r0, #32] \n" // store r9 into nlr_buf
+ "mov r1, r10 \n"
+ "str r1, [r0, #36] \n" // store r10 into nlr_buf
+ "mov r1, r11 \n"
+ "str r1, [r0, #40] \n" // store r11 into nlr_buf
+ "mov r1, r13 \n"
+ "str r1, [r0, #44] \n" // store r13=sp into nlr_buf
+ "mov r1, lr \n"
+ "str r1, [r0, #8] \n" // store lr into nlr_buf
+ #else
+ "str r8, [r0, #28] \n" // store r8 into nlr_buf
+ "str r9, [r0, #32] \n" // store r9 into nlr_buf
+ "str r10, [r0, #36] \n" // store r10 into nlr_buf
+ "str r11, [r0, #40] \n" // store r11 into nlr_buf
+ "str r13, [r0, #44] \n" // store r13=sp into nlr_buf
+ #if MICROPY_NLR_NUM_REGS == 16
+ "vstr d8, [r0, #48] \n" // store s16-s17 into nlr_buf
+ "vstr d9, [r0, #56] \n" // store s18-s19 into nlr_buf
+ "vstr d10, [r0, #64] \n" // store s20-s21 into nlr_buf
+ #endif
+ "str lr, [r0, #8] \n" // store lr into nlr_buf
+ #endif
-#if defined(__ARM_ARCH_6M__)
- "ldr r1, nlr_push_tail_var \n"
- "bx r1 \n" // do the rest in C
- ".align 2 \n"
- "nlr_push_tail_var: .word nlr_push_tail \n"
-#else
- "b nlr_push_tail \n" // do the rest in C
-#endif
- : // output operands
- : "r" (nlr) // input operands
- // Do not use r1, r2, r3 as temporary saving registers.
- // gcc 7.2.1 started doing this, and r3 got clobbered in nlr_push_tail.
- // See https://github.com/adafruit/circuitpython/issues/500 for details.
- : "r1", "r2", "r3" // clobbers
- );
+ #if defined(__ARM_ARCH_6M__)
+ "ldr r1, nlr_push_tail_var \n"
+ "bx r1 \n" // do the rest in C
+ ".align 2 \n"
+ "nlr_push_tail_var: .word nlr_push_tail \n"
+ #else
+ "b nlr_push_tail \n" // do the rest in C
+ #endif
+ : // output operands
+ : "r" (nlr) // input operands
+ // Do not use r1, r2, r3 as temporary saving registers.
+ // gcc 7.2.1 started doing this, and r3 got clobbered in nlr_push_tail.
+ // See https://github.com/adafruit/circuitpython/issues/500 for details.
+ : "r1", "r2", "r3" // clobbers
+ );
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8))
// Older versions of gcc give an error when naked functions don't return a value
@@ -98,44 +98,44 @@ NORETURN void nlr_jump(void *val) {
MP_NLR_JUMP_HEAD(val, top)
__asm volatile (
- "mov r0, %0 \n" // r0 points to nlr_buf
- "ldr r4, [r0, #12] \n" // load r4 from nlr_buf
- "ldr r5, [r0, #16] \n" // load r5 from nlr_buf
- "ldr r6, [r0, #20] \n" // load r6 from nlr_buf
- "ldr r7, [r0, #24] \n" // load r7 from nlr_buf
+ "mov r0, %0 \n" // r0 points to nlr_buf
+ "ldr r4, [r0, #12] \n" // load r4 from nlr_buf
+ "ldr r5, [r0, #16] \n" // load r5 from nlr_buf
+ "ldr r6, [r0, #20] \n" // load r6 from nlr_buf
+ "ldr r7, [r0, #24] \n" // load r7 from nlr_buf
-#if defined(__ARM_ARCH_6M__)
- "ldr r1, [r0, #28] \n" // load r8 from nlr_buf
- "mov r8, r1 \n"
- "ldr r1, [r0, #32] \n" // load r9 from nlr_buf
- "mov r9, r1 \n"
- "ldr r1, [r0, #36] \n" // load r10 from nlr_buf
- "mov r10, r1 \n"
- "ldr r1, [r0, #40] \n" // load r11 from nlr_buf
- "mov r11, r1 \n"
- "ldr r1, [r0, #44] \n" // load r13=sp from nlr_buf
- "mov r13, r1 \n"
- "ldr r1, [r0, #8] \n" // load lr from nlr_buf
- "mov lr, r1 \n"
-#else
- "ldr r8, [r0, #28] \n" // load r8 from nlr_buf
- "ldr r9, [r0, #32] \n" // load r9 from nlr_buf
- "ldr r10, [r0, #36] \n" // load r10 from nlr_buf
- "ldr r11, [r0, #40] \n" // load r11 from nlr_buf
- "ldr r13, [r0, #44] \n" // load r13=sp from nlr_buf
- #if MICROPY_NLR_NUM_REGS == 16
- "vldr d8, [r0, #48] \n" // load s16-s17 from nlr_buf
- "vldr d9, [r0, #56] \n" // load s18-s19 from nlr_buf
- "vldr d10, [r0, #64] \n" // load s20-s21 from nlr_buf
- #endif
- "ldr lr, [r0, #8] \n" // load lr from nlr_buf
-#endif
- "movs r0, #1 \n" // return 1, non-local return
- "bx lr \n" // return
- : // output operands
- : "r"(top) // input operands
- : // clobbered registers
- );
+ #if defined(__ARM_ARCH_6M__)
+ "ldr r1, [r0, #28] \n" // load r8 from nlr_buf
+ "mov r8, r1 \n"
+ "ldr r1, [r0, #32] \n" // load r9 from nlr_buf
+ "mov r9, r1 \n"
+ "ldr r1, [r0, #36] \n" // load r10 from nlr_buf
+ "mov r10, r1 \n"
+ "ldr r1, [r0, #40] \n" // load r11 from nlr_buf
+ "mov r11, r1 \n"
+ "ldr r1, [r0, #44] \n" // load r13=sp from nlr_buf
+ "mov r13, r1 \n"
+ "ldr r1, [r0, #8] \n" // load lr from nlr_buf
+ "mov lr, r1 \n"
+ #else
+ "ldr r8, [r0, #28] \n" // load r8 from nlr_buf
+ "ldr r9, [r0, #32] \n" // load r9 from nlr_buf
+ "ldr r10, [r0, #36] \n" // load r10 from nlr_buf
+ "ldr r11, [r0, #40] \n" // load r11 from nlr_buf
+ "ldr r13, [r0, #44] \n" // load r13=sp from nlr_buf
+ #if MICROPY_NLR_NUM_REGS == 16
+ "vldr d8, [r0, #48] \n" // load s16-s17 from nlr_buf
+ "vldr d9, [r0, #56] \n" // load s18-s19 from nlr_buf
+ "vldr d10, [r0, #64] \n" // load s20-s21 from nlr_buf
+ #endif
+ "ldr lr, [r0, #8] \n" // load lr from nlr_buf
+ #endif
+ "movs r0, #1 \n" // return 1, non-local return
+ "bx lr \n" // return
+ : // output operands
+ : "r" (top) // input operands
+ : // clobbered registers
+ );
MP_UNREACHABLE
}
diff --git a/py/nlrx64.c b/py/nlrx64.c
index 246d6a95b..d9ef0d813 100644
--- a/py/nlrx64.c
+++ b/py/nlrx64.c
@@ -41,41 +41,41 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
#if MICROPY_NLR_OS_WINDOWS
__asm volatile (
- "movq (%rsp), %rax \n" // load return %rip
- "movq %rax, 16(%rcx) \n" // store %rip into nlr_buf
- "movq %rbp, 24(%rcx) \n" // store %rbp into nlr_buf
- "movq %rsp, 32(%rcx) \n" // store %rsp into nlr_buf
- "movq %rbx, 40(%rcx) \n" // store %rbx into nlr_buf
- "movq %r12, 48(%rcx) \n" // store %r12 into nlr_buf
- "movq %r13, 56(%rcx) \n" // store %r13 into nlr_buf
- "movq %r14, 64(%rcx) \n" // store %r14 into nlr_buf
- "movq %r15, 72(%rcx) \n" // store %r15 into nlr_buf
- "movq %rdi, 80(%rcx) \n" // store %rdr into nlr_buf
- "movq %rsi, 88(%rcx) \n" // store %rsi into nlr_buf
- "jmp nlr_push_tail \n" // do the rest in C
- );
+ "movq (%rsp), %rax \n" // load return %rip
+ "movq %rax, 16(%rcx) \n" // store %rip into nlr_buf
+ "movq %rbp, 24(%rcx) \n" // store %rbp into nlr_buf
+ "movq %rsp, 32(%rcx) \n" // store %rsp into nlr_buf
+ "movq %rbx, 40(%rcx) \n" // store %rbx into nlr_buf
+ "movq %r12, 48(%rcx) \n" // store %r12 into nlr_buf
+ "movq %r13, 56(%rcx) \n" // store %r13 into nlr_buf
+ "movq %r14, 64(%rcx) \n" // store %r14 into nlr_buf
+ "movq %r15, 72(%rcx) \n" // store %r15 into nlr_buf
+ "movq %rdi, 80(%rcx) \n" // store %rdr into nlr_buf
+ "movq %rsi, 88(%rcx) \n" // store %rsi into nlr_buf
+ "jmp nlr_push_tail \n" // do the rest in C
+ );
#else
__asm volatile (
- #if defined(__APPLE__) || defined(__MACH__)
- "pop %rbp \n" // undo function's prelude
- #endif
- "movq (%rsp), %rax \n" // load return %rip
- "movq %rax, 16(%rdi) \n" // store %rip into nlr_buf
- "movq %rbp, 24(%rdi) \n" // store %rbp into nlr_buf
- "movq %rsp, 32(%rdi) \n" // store %rsp into nlr_buf
- "movq %rbx, 40(%rdi) \n" // store %rbx into nlr_buf
- "movq %r12, 48(%rdi) \n" // store %r12 into nlr_buf
- "movq %r13, 56(%rdi) \n" // store %r13 into nlr_buf
- "movq %r14, 64(%rdi) \n" // store %r14 into nlr_buf
- "movq %r15, 72(%rdi) \n" // store %r15 into nlr_buf
- #if defined(__APPLE__) || defined(__MACH__)
- "jmp _nlr_push_tail \n" // do the rest in C
- #else
- "jmp nlr_push_tail \n" // do the rest in C
- #endif
- );
+ #if defined(__APPLE__) || defined(__MACH__)
+ "pop %rbp \n" // undo function's prelude
+ #endif
+ "movq (%rsp), %rax \n" // load return %rip
+ "movq %rax, 16(%rdi) \n" // store %rip into nlr_buf
+ "movq %rbp, 24(%rdi) \n" // store %rbp into nlr_buf
+ "movq %rsp, 32(%rdi) \n" // store %rsp into nlr_buf
+ "movq %rbx, 40(%rdi) \n" // store %rbx into nlr_buf
+ "movq %r12, 48(%rdi) \n" // store %r12 into nlr_buf
+ "movq %r13, 56(%rdi) \n" // store %r13 into nlr_buf
+ "movq %r14, 64(%rdi) \n" // store %r14 into nlr_buf
+ "movq %r15, 72(%rdi) \n" // store %r15 into nlr_buf
+ #if defined(__APPLE__) || defined(__MACH__)
+ "jmp _nlr_push_tail \n" // do the rest in C
+ #else
+ "jmp nlr_push_tail \n" // do the rest in C
+ #endif
+ );
#endif
@@ -86,27 +86,27 @@ NORETURN void nlr_jump(void *val) {
MP_NLR_JUMP_HEAD(val, top)
__asm volatile (
- "movq %0, %%rcx \n" // %rcx points to nlr_buf
- #if MICROPY_NLR_OS_WINDOWS
- "movq 88(%%rcx), %%rsi \n" // load saved %rsi
- "movq 80(%%rcx), %%rdi \n" // load saved %rdr
- #endif
- "movq 72(%%rcx), %%r15 \n" // load saved %r15
- "movq 64(%%rcx), %%r14 \n" // load saved %r14
- "movq 56(%%rcx), %%r13 \n" // load saved %r13
- "movq 48(%%rcx), %%r12 \n" // load saved %r12
- "movq 40(%%rcx), %%rbx \n" // load saved %rbx
- "movq 32(%%rcx), %%rsp \n" // load saved %rsp
- "movq 24(%%rcx), %%rbp \n" // load saved %rbp
- "movq 16(%%rcx), %%rax \n" // load saved %rip
- "movq %%rax, (%%rsp) \n" // store saved %rip to stack
- "xorq %%rax, %%rax \n" // clear return register
- "inc %%al \n" // increase to make 1, non-local return
- "ret \n" // return
- : // output operands
- : "r"(top) // input operands
- : // clobbered registers
- );
+ "movq %0, %%rcx \n" // %rcx points to nlr_buf
+ #if MICROPY_NLR_OS_WINDOWS
+ "movq 88(%%rcx), %%rsi \n" // load saved %rsi
+ "movq 80(%%rcx), %%rdi \n" // load saved %rdr
+ #endif
+ "movq 72(%%rcx), %%r15 \n" // load saved %r15
+ "movq 64(%%rcx), %%r14 \n" // load saved %r14
+ "movq 56(%%rcx), %%r13 \n" // load saved %r13
+ "movq 48(%%rcx), %%r12 \n" // load saved %r12
+ "movq 40(%%rcx), %%rbx \n" // load saved %rbx
+ "movq 32(%%rcx), %%rsp \n" // load saved %rsp
+ "movq 24(%%rcx), %%rbp \n" // load saved %rbp
+ "movq 16(%%rcx), %%rax \n" // load saved %rip
+ "movq %%rax, (%%rsp) \n" // store saved %rip to stack
+ "xorq %%rax, %%rax \n" // clear return register
+ "inc %%al \n" // increase to make 1, non-local return
+ "ret \n" // return
+ : // output operands
+ : "r" (top) // input operands
+ : // clobbered registers
+ );
MP_UNREACHABLE
}
diff --git a/py/nlrx86.c b/py/nlrx86.c
index 18306253d..598b199c2 100644
--- a/py/nlrx86.c
+++ b/py/nlrx86.c
@@ -34,7 +34,7 @@
// ebx, esi, edi, ebp, esp, eip
#if defined(MICROPY_NLR_OS_WINDOWS) && MICROPY_NLR_OS_WINDOWS
-unsigned int nlr_push_tail(nlr_buf_t *nlr) asm("nlr_push_tail");
+unsigned int nlr_push_tail(nlr_buf_t *nlr) asm ("nlr_push_tail");
#else
__attribute__((used)) unsigned int nlr_push_tail(nlr_buf_t *nlr);
#endif
@@ -61,19 +61,19 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
#endif
__asm volatile (
- #if UNDO_PRELUDE
- "pop %ebp \n" // undo function's prelude
- #endif
- "mov 4(%esp), %edx \n" // load nlr_buf
- "mov (%esp), %eax \n" // load return %eip
- "mov %eax, 8(%edx) \n" // store %eip into nlr_buf
- "mov %ebp, 12(%edx) \n" // store %ebp into nlr_buf
- "mov %esp, 16(%edx) \n" // store %esp into nlr_buf
- "mov %ebx, 20(%edx) \n" // store %ebx into nlr_buf
- "mov %edi, 24(%edx) \n" // store %edi into nlr_buf
- "mov %esi, 28(%edx) \n" // store %esi into nlr_buf
- "jmp nlr_push_tail \n" // do the rest in C
- );
+ #if UNDO_PRELUDE
+ "pop %ebp \n" // undo function's prelude
+ #endif
+ "mov 4(%esp), %edx \n" // load nlr_buf
+ "mov (%esp), %eax \n" // load return %eip
+ "mov %eax, 8(%edx) \n" // store %eip into nlr_buf
+ "mov %ebp, 12(%edx) \n" // store %ebp into nlr_buf
+ "mov %esp, 16(%edx) \n" // store %esp into nlr_buf
+ "mov %ebx, 20(%edx) \n" // store %ebx into nlr_buf
+ "mov %edi, 24(%edx) \n" // store %edi into nlr_buf
+ "mov %esi, 28(%edx) \n" // store %esi into nlr_buf
+ "jmp nlr_push_tail \n" // do the rest in C
+ );
#if !USE_NAKED
return 0; // needed to silence compiler warning
@@ -84,21 +84,21 @@ NORETURN void nlr_jump(void *val) {
MP_NLR_JUMP_HEAD(val, top)
__asm volatile (
- "mov %0, %%edx \n" // %edx points to nlr_buf
- "mov 28(%%edx), %%esi \n" // load saved %esi
- "mov 24(%%edx), %%edi \n" // load saved %edi
- "mov 20(%%edx), %%ebx \n" // load saved %ebx
- "mov 16(%%edx), %%esp \n" // load saved %esp
- "mov 12(%%edx), %%ebp \n" // load saved %ebp
- "mov 8(%%edx), %%eax \n" // load saved %eip
- "mov %%eax, (%%esp) \n" // store saved %eip to stack
- "xor %%eax, %%eax \n" // clear return register
- "inc %%al \n" // increase to make 1, non-local return
- "ret \n" // return
- : // output operands
- : "r"(top) // input operands
- : // clobbered registers
- );
+ "mov %0, %%edx \n" // %edx points to nlr_buf
+ "mov 28(%%edx), %%esi \n" // load saved %esi
+ "mov 24(%%edx), %%edi \n" // load saved %edi
+ "mov 20(%%edx), %%ebx \n" // load saved %ebx
+ "mov 16(%%edx), %%esp \n" // load saved %esp
+ "mov 12(%%edx), %%ebp \n" // load saved %ebp
+ "mov 8(%%edx), %%eax \n" // load saved %eip
+ "mov %%eax, (%%esp) \n" // store saved %eip to stack
+ "xor %%eax, %%eax \n" // clear return register
+ "inc %%al \n" // increase to make 1, non-local return
+ "ret \n" // return
+ : // output operands
+ : "r" (top) // input operands
+ : // clobbered registers
+ );
MP_UNREACHABLE
}
diff --git a/py/nlrxtensa.c b/py/nlrxtensa.c
index e04535ff8..5aa767aae 100644
--- a/py/nlrxtensa.c
+++ b/py/nlrxtensa.c
@@ -39,18 +39,18 @@
unsigned int nlr_push(nlr_buf_t *nlr) {
__asm volatile (
- "s32i.n a0, a2, 8 \n" // save regs...
- "s32i.n a1, a2, 12 \n"
- "s32i.n a8, a2, 16 \n"
- "s32i.n a9, a2, 20 \n"
- "s32i.n a10, a2, 24 \n"
- "s32i.n a11, a2, 28 \n"
- "s32i.n a12, a2, 32 \n"
- "s32i.n a13, a2, 36 \n"
- "s32i.n a14, a2, 40 \n"
- "s32i.n a15, a2, 44 \n"
- "j nlr_push_tail \n" // do the rest in C
- );
+ "s32i.n a0, a2, 8 \n" // save regs...
+ "s32i.n a1, a2, 12 \n"
+ "s32i.n a8, a2, 16 \n"
+ "s32i.n a9, a2, 20 \n"
+ "s32i.n a10, a2, 24 \n"
+ "s32i.n a11, a2, 28 \n"
+ "s32i.n a12, a2, 32 \n"
+ "s32i.n a13, a2, 36 \n"
+ "s32i.n a14, a2, 40 \n"
+ "s32i.n a15, a2, 44 \n"
+ "j nlr_push_tail \n" // do the rest in C
+ );
return 0; // needed to silence compiler warning
}
@@ -59,23 +59,23 @@ NORETURN void nlr_jump(void *val) {
MP_NLR_JUMP_HEAD(val, top)
__asm volatile (
- "mov.n a2, %0 \n" // a2 points to nlr_buf
- "l32i.n a0, a2, 8 \n" // restore regs...
- "l32i.n a1, a2, 12 \n"
- "l32i.n a8, a2, 16 \n"
- "l32i.n a9, a2, 20 \n"
- "l32i.n a10, a2, 24 \n"
- "l32i.n a11, a2, 28 \n"
- "l32i.n a12, a2, 32 \n"
- "l32i.n a13, a2, 36 \n"
- "l32i.n a14, a2, 40 \n"
- "l32i.n a15, a2, 44 \n"
- "movi.n a2, 1 \n" // return 1, non-local return
- "ret.n \n" // return
- : // output operands
- : "r"(top) // input operands
- : // clobbered registers
- );
+ "mov.n a2, %0 \n" // a2 points to nlr_buf
+ "l32i.n a0, a2, 8 \n" // restore regs...
+ "l32i.n a1, a2, 12 \n"
+ "l32i.n a8, a2, 16 \n"
+ "l32i.n a9, a2, 20 \n"
+ "l32i.n a10, a2, 24 \n"
+ "l32i.n a11, a2, 28 \n"
+ "l32i.n a12, a2, 32 \n"
+ "l32i.n a13, a2, 36 \n"
+ "l32i.n a14, a2, 40 \n"
+ "l32i.n a15, a2, 44 \n"
+ "movi.n a2, 1 \n" // return 1, non-local return
+ "ret.n \n" // return
+ : // output operands
+ : "r" (top) // input operands
+ : // clobbered registers
+ );
MP_UNREACHABLE
}
diff --git a/py/obj.c b/py/obj.c
index 5f19089e8..b27136253 100644
--- a/py/obj.c
+++ b/py/obj.c
@@ -45,16 +45,16 @@
mp_obj_type_t *mp_obj_get_type(mp_const_obj_t o_in) {
if (MP_OBJ_IS_SMALL_INT(o_in)) {
- return (mp_obj_type_t*)&mp_type_int;
+ return (mp_obj_type_t *)&mp_type_int;
} else if (MP_OBJ_IS_QSTR(o_in)) {
- return (mp_obj_type_t*)&mp_type_str;
+ return (mp_obj_type_t *)&mp_type_str;
#if MICROPY_PY_BUILTINS_FLOAT
} else if (mp_obj_is_float(o_in)) {
- return (mp_obj_type_t*)&mp_type_float;
+ return (mp_obj_type_t *)&mp_type_float;
#endif
} else {
const mp_obj_base_t *o = MP_OBJ_TO_PTR(o_in);
- return (mp_obj_type_t*)o->type;
+ return (mp_obj_type_t *)o->type;
}
}
@@ -75,15 +75,15 @@ void mp_obj_print_helper(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t
}
#endif
-#ifndef NDEBUG
+ #ifndef NDEBUG
if (o_in == MP_OBJ_NULL) {
mp_print_str(print, "(nil)");
return;
}
-#endif
+ #endif
mp_obj_type_t *type = mp_obj_get_type(o_in);
if (type->print != NULL) {
- type->print((mp_print_t*)print, o_in, kind);
+ type->print((mp_print_t *)print, o_in, kind);
} else {
mp_printf(print, "<%q>", type->name);
}
@@ -101,28 +101,28 @@ void mp_obj_print_exception(const mp_print_t *print, mp_obj_t exc) {
if (n > 0) {
assert(n % 3 == 0);
// Decompress the format strings
- const compressed_string_t* traceback = translate("Traceback (most recent call last):\n");
+ const compressed_string_t *traceback = translate("Traceback (most recent call last):\n");
char decompressed[decompress_length(traceback)];
decompress(traceback, decompressed);
-#if MICROPY_ENABLE_SOURCE_LINE
- const compressed_string_t* frame = translate(" File \"%q\", line %d");
-#else
- const compressed_string_t* frame = translate(" File \"%q\"");
-#endif
+ #if MICROPY_ENABLE_SOURCE_LINE
+ const compressed_string_t *frame = translate(" File \"%q\", line %d");
+ #else
+ const compressed_string_t *frame = translate(" File \"%q\"");
+ #endif
char decompressed_frame[decompress_length(frame)];
decompress(frame, decompressed_frame);
- const compressed_string_t* block_fmt = translate(", in %q\n");
+ const compressed_string_t *block_fmt = translate(", in %q\n");
char decompressed_block[decompress_length(block_fmt)];
decompress(block_fmt, decompressed_block);
// Print the traceback
mp_print_str(print, decompressed);
for (int i = n - 3; i >= 0; i -= 3) {
-#if MICROPY_ENABLE_SOURCE_LINE
+ #if MICROPY_ENABLE_SOURCE_LINE
mp_printf(print, decompressed_frame, values[i], (int)values[i + 1]);
-#else
+ #else
mp_printf(print, decompressed_frame, values[i]);
-#endif
+ #endif
// the block name can be NULL if it's unknown
qstr block = values[i + 2];
if (block == MP_QSTR_NULL) {
@@ -214,7 +214,9 @@ bool mp_obj_equal(mp_obj_t o1, mp_obj_t o2) {
// both SMALL_INT, and not equal if we get here
return false;
} else {
- mp_obj_t temp = o2; o2 = o1; o1 = temp;
+ mp_obj_t temp = o2;
+ o2 = o1;
+ o1 = temp;
// o2 is now the SMALL_INT, o1 is not
// fall through to generic op
}
@@ -268,10 +270,10 @@ mp_int_t mp_obj_get_int(mp_const_obj_t arg) {
return mp_obj_int_get_checked(arg);
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_int);
+ mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_int);
#else
- mp_raise_TypeError_varg(
- translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_int);
+ mp_raise_TypeError_varg(
+ translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_int);
#endif
}
}
@@ -331,10 +333,10 @@ mp_float_t mp_obj_get_float(mp_obj_t arg) {
if (!mp_obj_get_float_maybe(arg, &val)) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_float);
+ mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_float);
#else
- mp_raise_TypeError_varg(
- translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_float);
+ mp_raise_TypeError_varg(
+ translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_float);
#endif
}
@@ -364,10 +366,10 @@ void mp_obj_get_complex(mp_obj_t arg, mp_float_t *real, mp_float_t *imag) {
mp_obj_complex_get(arg, real, imag);
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_complex);
+ mp_raise_TypeError_varg(translate("can't convert to %q"), MP_QSTR_complex);
#else
- mp_raise_TypeError_varg(
- translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_complex);
+ mp_raise_TypeError_varg(
+ translate("can't convert %q to %q"), mp_obj_get_type_qstr(arg), MP_QSTR_complex);
#endif
}
}
@@ -382,10 +384,10 @@ void mp_obj_get_array(mp_obj_t o, size_t *len, mp_obj_t **items) {
mp_obj_list_get(o, len, items);
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("expected tuple/list"));
+ mp_raise_TypeError(translate("expected tuple/list"));
#else
- mp_raise_TypeError_varg(
- translate("object '%q' is not a tuple or list"), mp_obj_get_type_qstr(o));
+ mp_raise_TypeError_varg(
+ translate("object '%q' is not a tuple or list"), mp_obj_get_type_qstr(o));
#endif
}
}
@@ -396,10 +398,10 @@ void mp_obj_get_array_fixed_n(mp_obj_t o, size_t len, mp_obj_t **items) {
mp_obj_get_array(o, &seq_len, items);
if (seq_len != len) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_ValueError(translate("tuple/list has wrong length"));
+ mp_raise_ValueError(translate("tuple/list has wrong length"));
#else
- mp_raise_ValueError_varg(translate("requested length %d but object has length %d"),
- (int)len, (int)seq_len);
+ mp_raise_ValueError_varg(translate("requested length %d but object has length %d"),
+ (int)len, (int)seq_len);
#endif
}
}
@@ -411,11 +413,11 @@ size_t mp_get_index(const mp_obj_type_t *type, size_t len, mp_obj_t index, bool
i = MP_OBJ_SMALL_INT_VALUE(index);
} else if (!mp_obj_get_int_maybe(index, &i)) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("indices must be integers"));
+ mp_raise_TypeError(translate("indices must be integers"));
#else
- mp_raise_TypeError_varg(
- translate("%q indices must be integers, not %q"),
- type->name, mp_obj_get_type_qstr(index));
+ mp_raise_TypeError_varg(
+ translate("%q indices must be integers, not %q"),
+ type->name, mp_obj_get_type_qstr(index));
#endif
}
@@ -431,10 +433,10 @@ size_t mp_get_index(const mp_obj_type_t *type, size_t len, mp_obj_t index, bool
} else {
if (i < 0 || (mp_uint_t)i >= len) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_IndexError(translate("index out of range"));
+ mp_raise_IndexError(translate("index out of range"));
#else
- mp_raise_msg_varg(&mp_type_IndexError,
- translate("%q index out of range"), type->name);
+ mp_raise_msg_varg(&mp_type_IndexError,
+ translate("%q index out of range"), type->name);
#endif
}
}
@@ -466,10 +468,10 @@ mp_obj_t mp_obj_len(mp_obj_t o_in) {
mp_obj_t len = mp_obj_len_maybe(o_in);
if (len == MP_OBJ_NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object has no len"));
+ mp_raise_TypeError(translate("object has no len"));
#else
- mp_raise_TypeError_varg(
- translate("object of type '%q' has no len()"), mp_obj_get_type_qstr(o_in));
+ mp_raise_TypeError_varg(
+ translate("object of type '%q' has no len()"), mp_obj_get_type_qstr(o_in));
#endif
} else {
return len;
@@ -479,10 +481,10 @@ mp_obj_t mp_obj_len(mp_obj_t o_in) {
// may return MP_OBJ_NULL
mp_obj_t mp_obj_len_maybe(mp_obj_t o_in) {
if (
-#if !MICROPY_PY_BUILTINS_STR_UNICODE
+ #if !MICROPY_PY_BUILTINS_STR_UNICODE
// It's simple - unicode is slow, non-unicode is fast
MP_OBJ_IS_STR(o_in) ||
-#endif
+ #endif
MP_OBJ_IS_TYPE(o_in, &mp_type_bytes)) {
GET_STR_LEN(o_in, l);
return MP_OBJ_NEW_SMALL_INT(l);
@@ -509,24 +511,24 @@ mp_obj_t mp_obj_subscr(mp_obj_t base, mp_obj_t index, mp_obj_t value) {
}
if (value == MP_OBJ_NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object does not support item deletion"));
+ mp_raise_TypeError(translate("object does not support item deletion"));
#else
- mp_raise_TypeError_varg(
- translate("'%q' object does not support item deletion"), mp_obj_get_type_qstr(base));
+ mp_raise_TypeError_varg(
+ translate("'%q' object does not support item deletion"), mp_obj_get_type_qstr(base));
#endif
} else if (value == MP_OBJ_SENTINEL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object is not subscriptable"));
+ mp_raise_TypeError(translate("object is not subscriptable"));
#else
- mp_raise_TypeError_varg(
- translate("'%q' object is not subscriptable"), mp_obj_get_type_qstr(base));
+ mp_raise_TypeError_varg(
+ translate("'%q' object is not subscriptable"), mp_obj_get_type_qstr(base));
#endif
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object does not support item assignment"));
+ mp_raise_TypeError(translate("object does not support item assignment"));
#else
- mp_raise_TypeError_varg(
- translate("'%q' object does not support item assignment"), mp_obj_get_type_qstr(base));
+ mp_raise_TypeError_varg(
+ translate("'%q' object does not support item assignment"), mp_obj_get_type_qstr(base));
#endif
}
}
@@ -565,7 +567,7 @@ STATIC mp_obj_t generic_it_iternext(mp_obj_t self_in) {
mp_obj_t mp_obj_new_generic_iterator(mp_obj_t obj, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_generic_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_generic_it_t *o = (mp_obj_generic_it_t*)iter_buf;
+ mp_obj_generic_it_t *o = (mp_obj_generic_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = generic_it_iternext;
o->obj = obj;
@@ -593,7 +595,9 @@ void mp_get_buffer_raise(mp_obj_t obj, mp_buffer_info_t *bufinfo, mp_uint_t flag
mp_obj_t mp_generic_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
switch (op) {
- case MP_UNARY_OP_HASH: return MP_OBJ_NEW_SMALL_INT((mp_uint_t)o_in);
- default: return MP_OBJ_NULL; // op not supported
+ case MP_UNARY_OP_HASH:
+ return MP_OBJ_NEW_SMALL_INT((mp_uint_t)o_in);
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
diff --git a/py/obj.h b/py/obj.h
index c3ab63b5c..fcea402c6 100644
--- a/py/obj.h
+++ b/py/obj.h
@@ -70,13 +70,13 @@ typedef struct _mp_obj_base_t mp_obj_base_t;
// as many as we can to MP_OBJ_NULL because it's cheaper to load/compare 0.
#ifdef NDEBUG
-#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void*)0))
-#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void*)0))
-#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void*)4))
+#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void *)0))
+#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void *)0))
+#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void *)4))
#else
-#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void*)0))
-#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void*)4))
-#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void*)8))
+#define MP_OBJ_NULL (MP_OBJ_FROM_PTR((void *)0))
+#define MP_OBJ_STOP_ITERATION (MP_OBJ_FROM_PTR((void *)4))
+#define MP_OBJ_SENTINEL (MP_OBJ_FROM_PTR((void *)8))
#endif
// These macros/inline functions operate on objects and depend on the
@@ -85,13 +85,15 @@ typedef struct _mp_obj_base_t mp_obj_base_t;
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_A
-static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 1) != 0); }
+static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 1) != 0;
+}
#define MP_OBJ_SMALL_INT_VALUE(o) (((mp_int_t)(o)) >> 1)
#define MP_OBJ_NEW_SMALL_INT(small_int) ((mp_obj_t)((((mp_uint_t)(small_int)) << 1) | 1))
-static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 3) == 2); }
+static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 3) == 2;
+}
#define MP_OBJ_QSTR_VALUE(o) (((mp_uint_t)(o)) >> 2)
#define MP_OBJ_NEW_QSTR(qst) ((mp_obj_t)((((mp_uint_t)(qst)) << 2) | 2))
@@ -106,18 +108,21 @@ mp_float_t mp_obj_float_get(mp_obj_t self_in);
mp_obj_t mp_obj_new_float(mp_float_t value);
#endif
-static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 3) == 0); }
+static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 3) == 0;
+}
#elif MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_B
-static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 3) == 1); }
+static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 3) == 1;
+}
#define MP_OBJ_SMALL_INT_VALUE(o) (((mp_int_t)(o)) >> 2)
#define MP_OBJ_NEW_SMALL_INT(small_int) ((mp_obj_t)((((mp_uint_t)(small_int)) << 2) | 1))
-static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 3) == 3); }
+static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 3) == 3;
+}
#define MP_OBJ_QSTR_VALUE(o) (((mp_uint_t)(o)) >> 2)
#define MP_OBJ_NEW_QSTR(qst) ((mp_obj_t)((((mp_uint_t)(qst)) << 2) | 3))
@@ -132,21 +137,24 @@ mp_float_t mp_obj_float_get(mp_obj_t self_in);
mp_obj_t mp_obj_new_float(mp_float_t value);
#endif
-static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 1) == 0); }
+static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 1) == 0;
+}
#elif MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_C
-static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 1) != 0); }
+static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 1) != 0;
+}
#define MP_OBJ_SMALL_INT_VALUE(o) (((mp_int_t)(o)) >> 1)
#define MP_OBJ_NEW_SMALL_INT(small_int) ((mp_obj_t)((((mp_uint_t)(small_int)) << 1) | 1))
#define mp_const_float_e MP_ROM_PTR((mp_obj_t)(((0x402df854 & ~3) | 2) + 0x80800000))
#define mp_const_float_pi MP_ROM_PTR((mp_obj_t)(((0x40490fdb & ~3) | 2) + 0x80800000))
-static inline bool mp_obj_is_float(mp_const_obj_t o)
- { return (((mp_uint_t)(o)) & 3) == 2 && (((mp_uint_t)(o)) & 0xff800007) != 0x00000006; }
+static inline bool mp_obj_is_float(mp_const_obj_t o) {
+ return (((mp_uint_t)(o)) & 3) == 2 && (((mp_uint_t)(o)) & 0xff800007) != 0x00000006;
+}
static inline mp_float_t mp_obj_float_get(mp_const_obj_t o) {
union {
mp_float_t f;
@@ -162,23 +170,27 @@ static inline mp_obj_t mp_obj_new_float(mp_float_t f) {
return (mp_obj_t)(((num.u & ~0x3) | 2) + 0x80800000);
}
-static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o)
- { return (((mp_uint_t)(o)) & 0xff800007) == 0x00000006; }
+static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o) {
+ return (((mp_uint_t)(o)) & 0xff800007) == 0x00000006;
+}
#define MP_OBJ_QSTR_VALUE(o) (((mp_uint_t)(o)) >> 3)
#define MP_OBJ_NEW_QSTR(qst) ((mp_obj_t)((((mp_uint_t)(qst)) << 3) | 0x00000006))
-static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 3) == 0); }
+static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 3) == 0;
+}
#elif MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D
-static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 0xffff000000000000) == 0x0001000000000000); }
+static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 0xffff000000000000) == 0x0001000000000000;
+}
#define MP_OBJ_SMALL_INT_VALUE(o) (((mp_int_t)((o) << 16)) >> 17)
#define MP_OBJ_NEW_SMALL_INT(small_int) (((((uint64_t)(small_int)) & 0x7fffffffffff) << 1) | 0x0001000000000001)
-static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o)
- { return ((((mp_int_t)(o)) & 0xffff000000000000) == 0x0002000000000000); }
+static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o) {
+ return (((mp_int_t)(o)) & 0xffff000000000000) == 0x0002000000000000;
+}
#define MP_OBJ_QSTR_VALUE(o) ((((uint32_t)(o)) >> 1) & 0xffffffff)
#define MP_OBJ_NEW_QSTR(qst) ((mp_obj_t)((((mp_uint_t)(qst)) << 1) | 0x0002000000000001))
@@ -205,13 +217,17 @@ static inline mp_obj_t mp_obj_new_float(mp_float_t f) {
}
#endif
-static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o)
- { return ((((uint64_t)(o)) & 0xffff000000000000) == 0x0000000000000000); }
-#define MP_OBJ_TO_PTR(o) ((void*)(uintptr_t)(o))
+static inline bool MP_OBJ_IS_OBJ(mp_const_obj_t o) {
+ return (((uint64_t)(o)) & 0xffff000000000000) == 0x0000000000000000;
+}
+#define MP_OBJ_TO_PTR(o) ((void *)(uintptr_t)(o))
#define MP_OBJ_FROM_PTR(p) ((mp_obj_t)((uintptr_t)(p)))
// rom object storage needs special handling to widen 32-bit pointer to 64-bits
-typedef union _mp_rom_obj_t { uint64_t u64; struct { const void *lo, *hi; } u32; } mp_rom_obj_t;
+typedef union _mp_rom_obj_t { uint64_t u64;
+ struct { const void *lo, *hi;
+ } u32;
+} mp_rom_obj_t;
#define MP_ROM_INT(i) {MP_OBJ_NEW_SMALL_INT(i)}
#define MP_ROM_QSTR(q) {MP_OBJ_NEW_QSTR(q)}
#if MP_ENDIANNESS_LITTLE
@@ -229,7 +245,7 @@ typedef union _mp_rom_obj_t { uint64_t u64; struct { const void *lo, *hi; } u32;
// Cast mp_obj_t to object pointer
#ifndef MP_OBJ_TO_PTR
-#define MP_OBJ_TO_PTR(o) ((void*)o)
+#define MP_OBJ_TO_PTR(o) ((void *)o)
#endif
// Cast object pointer to mp_obj_t
@@ -257,11 +273,11 @@ typedef struct _mp_rom_obj_t { mp_const_obj_t o; } mp_rom_obj_t;
// Note: these are kept as macros because inline functions sometimes use much
// more code space than the equivalent macros, depending on the compiler.
-#define MP_OBJ_IS_TYPE(o, t) (MP_OBJ_IS_OBJ(o) && (((mp_obj_base_t*)MP_OBJ_TO_PTR(o))->type == (t))) // this does not work for checking int, str or fun; use below macros for that
+#define MP_OBJ_IS_TYPE(o, t) (MP_OBJ_IS_OBJ(o) && (((mp_obj_base_t *)MP_OBJ_TO_PTR(o))->type == (t))) // this does not work for checking int, str or fun; use below macros for that
#define MP_OBJ_IS_INT(o) (MP_OBJ_IS_SMALL_INT(o) || MP_OBJ_IS_TYPE(o, &mp_type_int))
#define MP_OBJ_IS_STR(o) (MP_OBJ_IS_QSTR(o) || MP_OBJ_IS_TYPE(o, &mp_type_str))
-#define MP_OBJ_IS_STR_OR_BYTES(o) (MP_OBJ_IS_QSTR(o) || (MP_OBJ_IS_OBJ(o) && ((mp_obj_base_t*)MP_OBJ_TO_PTR(o))->type->binary_op == mp_obj_str_binary_op))
-#define MP_OBJ_IS_FUN(o) (MP_OBJ_IS_OBJ(o) && (((mp_obj_base_t*)MP_OBJ_TO_PTR(o))->type->name == MP_QSTR_function))
+#define MP_OBJ_IS_STR_OR_BYTES(o) (MP_OBJ_IS_QSTR(o) || (MP_OBJ_IS_OBJ(o) && ((mp_obj_base_t *)MP_OBJ_TO_PTR(o))->type->binary_op == mp_obj_str_binary_op))
+#define MP_OBJ_IS_FUN(o) (MP_OBJ_IS_OBJ(o) && (((mp_obj_base_t *)MP_OBJ_TO_PTR(o))->type->name == MP_QSTR_function))
// These macros are used to declare and define constant function objects
// You can put "static" in front of the definitions to make them local
@@ -276,25 +292,25 @@ typedef struct _mp_rom_obj_t { mp_const_obj_t o; } mp_rom_obj_t;
#define MP_DEFINE_CONST_FUN_OBJ_0(obj_name, fun_name) \
const mp_obj_fun_builtin_fixed_t obj_name = \
- {{&mp_type_fun_builtin_0}, .fun._0 = fun_name}
+ {{&mp_type_fun_builtin_0}, .fun._0 = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_1(obj_name, fun_name) \
const mp_obj_fun_builtin_fixed_t obj_name = \
- {{&mp_type_fun_builtin_1}, .fun._1 = fun_name}
+ {{&mp_type_fun_builtin_1}, .fun._1 = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_2(obj_name, fun_name) \
const mp_obj_fun_builtin_fixed_t obj_name = \
- {{&mp_type_fun_builtin_2}, .fun._2 = fun_name}
+ {{&mp_type_fun_builtin_2}, .fun._2 = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_3(obj_name, fun_name) \
const mp_obj_fun_builtin_fixed_t obj_name = \
- {{&mp_type_fun_builtin_3}, .fun._3 = fun_name}
+ {{&mp_type_fun_builtin_3}, .fun._3 = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_VAR(obj_name, n_args_min, fun_name) \
const mp_obj_fun_builtin_var_t obj_name = \
- {{&mp_type_fun_builtin_var}, false, n_args_min, MP_OBJ_FUN_ARGS_MAX, .fun.var = fun_name}
+ {{&mp_type_fun_builtin_var}, false, n_args_min, MP_OBJ_FUN_ARGS_MAX, .fun.var = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(obj_name, n_args_min, n_args_max, fun_name) \
const mp_obj_fun_builtin_var_t obj_name = \
- {{&mp_type_fun_builtin_var}, false, n_args_min, n_args_max, .fun.var = fun_name}
+ {{&mp_type_fun_builtin_var}, false, n_args_min, n_args_max, .fun.var = fun_name}
#define MP_DEFINE_CONST_FUN_OBJ_KW(obj_name, n_args_min, fun_name) \
const mp_obj_fun_builtin_var_t obj_name = \
- {{&mp_type_fun_builtin_var}, true, n_args_min, MP_OBJ_FUN_ARGS_MAX, .fun.kw = fun_name}
+ {{&mp_type_fun_builtin_var}, true, n_args_min, MP_OBJ_FUN_ARGS_MAX, .fun.kw = fun_name}
#define MP_DEFINE_CONST_PROP_GET(obj_name, fun_name) \
const mp_obj_fun_builtin_fixed_t fun_name##_obj = {{&mp_type_fun_builtin_1}, .fun._1 = fun_name}; \
const mp_obj_property_t obj_name = { \
@@ -313,7 +329,7 @@ typedef struct _mp_rom_obj_t { mp_const_obj_t o; } mp_rom_obj_t;
.is_ordered = 1, \
.used = MP_ARRAY_SIZE(table_name), \
.alloc = MP_ARRAY_SIZE(table_name), \
- .table = (mp_map_elem_t*)(mp_rom_map_elem_t*)table_name, \
+ .table = (mp_map_elem_t *)(mp_rom_map_elem_t *)table_name, \
}
#define MP_DEFINE_CONST_DICT(dict_name, table_name) \
@@ -325,7 +341,7 @@ typedef struct _mp_rom_obj_t { mp_const_obj_t o; } mp_rom_obj_t;
.is_ordered = 1, \
.used = MP_ARRAY_SIZE(table_name), \
.alloc = MP_ARRAY_SIZE(table_name), \
- .table = (mp_map_elem_t*)(mp_rom_map_elem_t*)table_name, \
+ .table = (mp_map_elem_t *)(mp_rom_map_elem_t *)table_name, \
}, \
}
@@ -406,7 +422,9 @@ typedef enum _mp_map_lookup_kind_t {
extern const mp_map_t mp_const_empty_map;
-static inline bool MP_MAP_SLOT_IS_FILLED(const mp_map_t *map, size_t pos) { return ((map)->table[pos].key != MP_OBJ_NULL && (map)->table[pos].key != MP_OBJ_SENTINEL); }
+static inline bool MP_MAP_SLOT_IS_FILLED(const mp_map_t *map, size_t pos) {
+ return (map)->table[pos].key != MP_OBJ_NULL && (map)->table[pos].key != MP_OBJ_SENTINEL;
+}
void mp_map_init(mp_map_t *map, size_t n);
void mp_map_init_fixed_table(mp_map_t *map, size_t n, const mp_obj_t *table);
@@ -425,7 +443,9 @@ typedef struct _mp_set_t {
mp_obj_t *table;
} mp_set_t;
-static inline bool MP_SET_SLOT_IS_FILLED(const mp_set_t *set, size_t pos) { return ((set)->table[pos] != MP_OBJ_NULL && (set)->table[pos] != MP_OBJ_SENTINEL); }
+static inline bool MP_SET_SLOT_IS_FILLED(const mp_set_t *set, size_t pos) {
+ return (set)->table[pos] != MP_OBJ_NULL && (set)->table[pos] != MP_OBJ_SENTINEL;
+}
void mp_set_init(mp_set_t *set, size_t n);
mp_obj_t mp_set_lookup(mp_set_t *set, mp_obj_t index, mp_map_lookup_kind_t lookup_kind);
@@ -475,7 +495,7 @@ typedef struct _mp_buffer_info_t {
// if we'd bother to support various versions of structure
// (with different number of fields), we can distinguish
// them with ver = sizeof(struct). Cons: overkill for *micro*?
- //int ver; // ?
+ // int ver; // ?
void *buf; // can be NULL if len == 0
size_t len; // in bytes
@@ -665,17 +685,19 @@ extern const struct _mp_obj_exception_t mp_const_GeneratorExit_obj;
// General API for objects
mp_obj_t mp_obj_new_type(qstr name, mp_obj_t bases_tuple, mp_obj_t locals_dict);
-static inline mp_obj_t mp_obj_new_bool(mp_int_t x) { return x ? mp_const_true : mp_const_false; }
+static inline mp_obj_t mp_obj_new_bool(mp_int_t x) {
+ return x ? mp_const_true : mp_const_false;
+}
mp_obj_t mp_obj_new_cell(mp_obj_t obj);
mp_obj_t mp_obj_new_int(mp_int_t value);
mp_obj_t mp_obj_new_int_from_uint(mp_uint_t value);
mp_obj_t mp_obj_new_int_from_str_len(const char **str, size_t len, bool neg, unsigned int base);
mp_obj_t mp_obj_new_int_from_ll(long long val); // this must return a multi-precision integer object (or raise an overflow exception)
mp_obj_t mp_obj_new_int_from_ull(unsigned long long val); // this must return a multi-precision integer object (or raise an overflow exception)
-mp_obj_t mp_obj_new_str(const char* data, size_t len);
-mp_obj_t mp_obj_new_str_via_qstr(const char* data, size_t len);
+mp_obj_t mp_obj_new_str(const char *data, size_t len);
+mp_obj_t mp_obj_new_str_via_qstr(const char *data, size_t len);
mp_obj_t mp_obj_new_str_from_vstr(const mp_obj_type_t *type, vstr_t *vstr);
-mp_obj_t mp_obj_new_bytes(const byte* data, size_t len);
+mp_obj_t mp_obj_new_bytes(const byte *data, size_t len);
mp_obj_t mp_obj_new_bytes_of_zeros(size_t len);
mp_obj_t mp_obj_new_bytearray(size_t n, void *items);
mp_obj_t mp_obj_new_bytearray_of_zeros(size_t n);
@@ -723,7 +745,9 @@ bool mp_obj_is_true(mp_obj_t arg);
bool mp_obj_is_callable(mp_obj_t o_in);
bool mp_obj_equal(mp_obj_t o1, mp_obj_t o2);
-static inline bool mp_obj_is_integer(mp_const_obj_t o) { return MP_OBJ_IS_INT(o) || MP_OBJ_IS_TYPE(o, &mp_type_bool); } // returns true if o is bool, small int or long int
+static inline bool mp_obj_is_integer(mp_const_obj_t o) {
+ return MP_OBJ_IS_INT(o) || MP_OBJ_IS_TYPE(o, &mp_type_bool);
+} // returns true if o is bool, small int or long int
mp_int_t mp_obj_get_int(mp_const_obj_t arg);
mp_int_t mp_obj_get_int_truncated(mp_const_obj_t arg);
bool mp_obj_get_int_maybe(mp_const_obj_t arg, mp_int_t *value);
@@ -732,7 +756,7 @@ mp_float_t mp_obj_get_float(mp_obj_t self_in);
bool mp_obj_get_float_maybe(mp_obj_t arg, mp_float_t *value);
void mp_obj_get_complex(mp_obj_t self_in, mp_float_t *real, mp_float_t *imag);
#endif
-//qstr mp_obj_get_qstr(mp_obj_t arg);
+// qstr mp_obj_get_qstr(mp_obj_t arg);
void mp_obj_get_array(mp_obj_t o, size_t *len, mp_obj_t **items); // *items may point inside a GC block
void mp_obj_get_array_fixed_n(mp_obj_t o, size_t len, mp_obj_t **items); // *items may point inside a GC block
size_t mp_get_index(const mp_obj_type_t *type, size_t len, mp_obj_t index, bool is_slice);
@@ -780,7 +804,9 @@ void mp_str_print_quoted(const mp_print_t *print, const byte *str_data, size_t s
#if MICROPY_FLOAT_HIGH_QUALITY_HASH
mp_int_t mp_float_hash(mp_float_t val);
#else
-static inline mp_int_t mp_float_hash(mp_float_t val) { return (mp_int_t)val; }
+static inline mp_int_t mp_float_hash(mp_float_t val) {
+ return (mp_int_t)val;
+}
#endif
mp_obj_t mp_obj_float_binary_op(mp_binary_op_t op, mp_float_t lhs_val, mp_obj_t rhs); // can return MP_OBJ_NULL if op not supported
@@ -906,17 +932,17 @@ mp_obj_t mp_seq_index_obj(const mp_obj_t *items, size_t len, size_t n_args, cons
mp_obj_t mp_seq_count_obj(const mp_obj_t *items, size_t len, mp_obj_t value);
mp_obj_t mp_seq_extract_slice(size_t len, const mp_obj_t *seq, mp_bound_slice_t *indexes);
// Helper to clear stale pointers from allocated, but unused memory, to preclude GC problems
-#define mp_seq_clear(start, len, alloc_len, item_sz) memset((byte*)(start) + (len) * (item_sz), 0, ((alloc_len) - (len)) * (item_sz))
+#define mp_seq_clear(start, len, alloc_len, item_sz) memset((byte *)(start) + (len) * (item_sz), 0, ((alloc_len) - (len)) * (item_sz))
#define mp_seq_replace_slice_no_grow(dest, dest_len, beg, end, slice, slice_len, item_sz) \
/*printf("memcpy(%p, %p, %d)\n", dest + beg, slice, slice_len * (item_sz));*/ \
- memcpy(((char*)dest) + (beg) * (item_sz), slice, slice_len * (item_sz)); \
+ memcpy(((char *)dest) + (beg) * (item_sz), slice, slice_len * (item_sz)); \
/*printf("memmove(%p, %p, %d)\n", dest + (beg + slice_len), dest + end, (dest_len - end) * (item_sz));*/ \
- memmove(((char*)dest) + (beg + slice_len) * (item_sz), ((char*)dest) + (end) * (item_sz), (dest_len - end) * (item_sz));
+ memmove(((char *)dest) + (beg + slice_len) * (item_sz), ((char *)dest) + (end) * (item_sz), (dest_len - end) * (item_sz));
// Note: dest and slice regions may overlap
#define mp_seq_replace_slice_grow_inplace(dest, dest_len, beg, end, slice, slice_len, len_adj, item_sz) \
/*printf("memmove(%p, %p, %d)\n", dest + beg + len_adj, dest + beg, (dest_len - beg) * (item_sz));*/ \
- memmove(((char*)dest) + (beg + slice_len) * (item_sz), ((char*)dest) + (end) * (item_sz), ((dest_len) + (len_adj) - ((beg) + (slice_len))) * (item_sz)); \
- memmove(((char*)dest) + (beg) * (item_sz), slice, slice_len * (item_sz));
+ memmove(((char *)dest) + (beg + slice_len) * (item_sz), ((char *)dest) + (end) * (item_sz), ((dest_len) + (len_adj) - ((beg) + (slice_len))) * (item_sz)); \
+ memmove(((char *)dest) + (beg) * (item_sz), slice, slice_len * (item_sz));
#endif // MICROPY_INCLUDED_PY_OBJ_H
diff --git a/py/objarray.c b/py/objarray.c
index 9640f596a..e6024f720 100644
--- a/py/objarray.c
+++ b/py/objarray.c
@@ -123,10 +123,10 @@ STATIC mp_obj_t array_construct(char typecode, mp_obj_t initializer) {
// other arrays can only be raw-initialised from bytes and bytearray objects
mp_buffer_info_t bufinfo;
if (((MICROPY_PY_BUILTINS_BYTEARRAY
- && typecode == BYTEARRAY_TYPECODE)
- || (MICROPY_PY_ARRAY
- && (MP_OBJ_IS_TYPE(initializer, &mp_type_bytes)
- || (MICROPY_PY_BUILTINS_BYTEARRAY && MP_OBJ_IS_TYPE(initializer, &mp_type_bytearray)))))
+ && typecode == BYTEARRAY_TYPECODE)
+ || (MICROPY_PY_ARRAY
+ && (MP_OBJ_IS_TYPE(initializer, &mp_type_bytes)
+ || (MICROPY_PY_BUILTINS_BYTEARRAY && MP_OBJ_IS_TYPE(initializer, &mp_type_bytearray)))))
&& mp_get_buffer(initializer, &bufinfo, MP_BUFFER_READ)) {
// construct array from raw bytes
size_t sz = mp_binary_get_size('@', typecode, NULL);
@@ -263,9 +263,12 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(memoryview_cast_obj, memoryview_cast);
STATIC mp_obj_t array_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mp_obj_array_t *o = MP_OBJ_TO_PTR(o_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(o->len != 0);
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(o->len);
- default: return MP_OBJ_NULL; // op not supported
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(o->len != 0);
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(o->len);
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -284,22 +287,23 @@ STATIC mp_obj_t array_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs
mp_obj_array_t *res;
byte *ptr;
size_t orig_lhs_bufinfo_len = lhs_bufinfo.len;
- if(inplace) {
+ if (inplace) {
res = lhs;
size_t item_sz = mp_binary_get_size('@', lhs->typecode, NULL);
lhs->items = m_renew(byte, lhs->items, (lhs->len + lhs->free) * item_sz, lhs->len * repeat * item_sz);
lhs->len = lhs->len * repeat;
lhs->free = 0;
- if (!repeat)
+ if (!repeat) {
return MP_OBJ_FROM_PTR(res);
+ }
repeat--;
- ptr = (byte*)res->items + orig_lhs_bufinfo_len;
+ ptr = (byte *)res->items + orig_lhs_bufinfo_len;
} else {
res = array_new(lhs_bufinfo.typecode, lhs->len * repeat);
- ptr = (byte*)res->items;
+ ptr = (byte *)res->items;
}
- if(orig_lhs_bufinfo_len) {
- for(;repeat--; ptr += orig_lhs_bufinfo_len) {
+ if (orig_lhs_bufinfo_len) {
+ for (; repeat--; ptr += orig_lhs_bufinfo_len) {
memcpy(ptr, lhs_bufinfo.buf, orig_lhs_bufinfo_len);
}
}
@@ -319,7 +323,7 @@ STATIC mp_obj_t array_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs
// note: lhs->len is element count of lhs, lhs_bufinfo.len is byte count
mp_obj_array_t *res = array_new(lhs_bufinfo.typecode, lhs->len + rhs_len);
- mp_seq_cat((byte*)res->items, lhs_bufinfo.buf, lhs_bufinfo.len, rhs_bufinfo.buf, rhs_len * sz, byte);
+ mp_seq_cat((byte *)res->items, lhs_bufinfo.buf, lhs_bufinfo.len, rhs_bufinfo.buf, rhs_len * sz, byte);
return MP_OBJ_FROM_PTR(res);
}
@@ -417,7 +421,7 @@ STATIC mp_obj_t array_extend(mp_obj_t self_in, mp_obj_t arg_in) {
}
// extend
- mp_seq_copy((byte*)self->items + self->len * sz, arg_bufinfo.buf, len * sz, byte);
+ mp_seq_copy((byte *)self->items + self->len * sz, arg_bufinfo.buf, len * sz, byte);
self->len += len;
return mp_const_none;
@@ -441,12 +445,12 @@ STATIC mp_obj_t buffer_finder(size_t n_args, const mp_obj_t *args, int direction
}
const byte *start = haystack_bufinfo.buf;
- const byte *end = ((const byte*)haystack_bufinfo.buf) + haystack_bufinfo.len;
+ const byte *end = ((const byte *)haystack_bufinfo.buf) + haystack_bufinfo.len;
if (n_args >= 3 && args[2] != mp_const_none) {
start += mp_get_index(self_type, haystack_bufinfo.len, args[2], true);
}
if (n_args >= 4 && args[3] != mp_const_none) {
- end = ((const byte*)haystack_bufinfo.buf) + mp_get_index(self_type, haystack_bufinfo.len, args[3], true);
+ end = ((const byte *)haystack_bufinfo.buf) + mp_get_index(self_type, haystack_bufinfo.len, args[3], true);
}
const byte *p = NULL;
@@ -461,7 +465,7 @@ STATIC mp_obj_t buffer_finder(size_t n_args, const mp_obj_t *args, int direction
return MP_OBJ_NEW_SMALL_INT(-1);
}
}
- return MP_OBJ_NEW_SMALL_INT(p - (const byte*) haystack_bufinfo.buf);
+ return MP_OBJ_NEW_SMALL_INT(p - (const byte *)haystack_bufinfo.buf);
}
STATIC mp_obj_t buffer_find(size_t n_args, const mp_obj_t *args) {
@@ -495,7 +499,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
} else {
mp_obj_array_t *o = MP_OBJ_TO_PTR(self_in);
if (0) {
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
} else if (MP_OBJ_IS_TYPE(index_in, &mp_type_slice)) {
mp_bound_slice_t slice;
if (!mp_seq_get_fast_slice_indexes(o->len, index_in, &slice)) {
@@ -507,7 +511,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
size_t src_len;
void *src_items;
size_t item_sz = mp_binary_get_size('@', o->typecode & TYPECODE_MASK, NULL);
- if (MP_OBJ_IS_OBJ(value) && ((mp_obj_base_t*)MP_OBJ_TO_PTR(value))->type->subscr == array_subscr) {
+ if (MP_OBJ_IS_OBJ(value) && ((mp_obj_base_t *)MP_OBJ_TO_PTR(value))->type->subscr == array_subscr) {
// value is array, bytearray or memoryview
mp_obj_array_t *src_slice = MP_OBJ_TO_PTR(value);
if (item_sz != mp_binary_get_size('@', src_slice->typecode & TYPECODE_MASK, NULL)) {
@@ -518,7 +522,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
src_items = src_slice->items;
#if MICROPY_PY_BUILTINS_MEMORYVIEW
if (MP_OBJ_IS_TYPE(value, &mp_type_memoryview)) {
- src_items = (uint8_t*)src_items + (src_slice->free * item_sz);
+ src_items = (uint8_t *)src_items + (src_slice->free * item_sz);
}
#endif
} else if (MP_OBJ_IS_TYPE(value, &mp_type_bytes)) {
@@ -535,7 +539,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
// TODO: check src/dst compat
mp_int_t len_adj = src_len - (slice.stop - slice.start);
- uint8_t* dest_items = o->items;
+ uint8_t *dest_items = o->items;
#if MICROPY_PY_BUILTINS_MEMORYVIEW
if (o->base.type == &mp_type_memoryview) {
if (!(o->typecode & MP_OBJ_ARRAY_TYPECODE_FLAG_RW)) {
@@ -549,7 +553,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
}
#endif
if (len_adj > 0) {
- if ((mp_uint_t) len_adj > o->free) {
+ if ((mp_uint_t)len_adj > o->free) {
// TODO: alloc policy; at the moment we go conservative
o->items = m_renew(byte, o->items, (o->len + o->free) * item_sz, (o->len + len_adj) * item_sz);
o->free = 0;
@@ -560,11 +564,11 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
} else {
mp_seq_replace_slice_no_grow(dest_items, o->len,
slice.start, slice.stop, src_items, src_len, item_sz);
-#if MICROPY_NONSTANDARD_TYPECODES
+ #if MICROPY_NONSTANDARD_TYPECODES
// Clear "freed" elements at the end of list
// TODO: This is actually only needed for typecode=='O'
mp_seq_clear(dest_items, o->len + len_adj, o->len, item_sz);
-#endif
+ #endif
// TODO: alloc policy after shrinking
}
o->len += len_adj;
@@ -588,10 +592,10 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
#endif
} else {
res = array_new(o->typecode, slice.stop - slice.start);
- memcpy(res->items, (uint8_t*)o->items + slice.start * sz, (slice.stop - slice.start) * sz);
+ memcpy(res->items, (uint8_t *)o->items + slice.start * sz, (slice.stop - slice.start) * sz);
}
return MP_OBJ_FROM_PTR(res);
-#endif
+ #endif
} else {
size_t index = mp_get_index(o->base.type, o->len, index_in, false);
#if MICROPY_PY_BUILTINS_MEMORYVIEW
@@ -627,7 +631,7 @@ STATIC mp_int_t array_get_buffer(mp_obj_t o_in, mp_buffer_info_t *bufinfo, mp_ui
// read-only memoryview
return 1;
}
- bufinfo->buf = (uint8_t*)bufinfo->buf + (size_t)o->free * sz;
+ bufinfo->buf = (uint8_t *)bufinfo->buf + (size_t)o->free * sz;
}
#else
(void)flags;
@@ -666,14 +670,14 @@ STATIC const mp_rom_map_elem_t bytearray_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_append), MP_ROM_PTR(&array_append_obj) },
{ MP_ROM_QSTR(MP_QSTR_extend), MP_ROM_PTR(&array_extend_obj) },
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
{ MP_ROM_QSTR(MP_QSTR_find), MP_ROM_PTR(&buffer_find_obj) },
{ MP_ROM_QSTR(MP_QSTR_rfind), MP_ROM_PTR(&buffer_rfind_obj) },
{ MP_ROM_QSTR(MP_QSTR_index), MP_ROM_PTR(&buffer_index_obj) },
{ MP_ROM_QSTR(MP_QSTR_rindex), MP_ROM_PTR(&buffer_rindex_obj) },
{ MP_ROM_QSTR(MP_QSTR_decode), MP_ROM_PTR(&array_decode_obj) },
-#endif
+ #endif
};
STATIC MP_DEFINE_CONST_DICT(bytearray_locals_dict, bytearray_locals_dict_table);
@@ -691,7 +695,7 @@ const mp_obj_type_t mp_type_array = {
.binary_op = array_binary_op,
.subscr = array_subscr,
.buffer_p = { .get_buffer = array_get_buffer },
- .locals_dict = (mp_obj_dict_t*)&array_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&array_locals_dict,
};
#endif
@@ -706,7 +710,7 @@ const mp_obj_type_t mp_type_bytearray = {
.binary_op = array_binary_op,
.subscr = array_subscr,
.buffer_p = { .get_buffer = array_get_buffer },
- .locals_dict = (mp_obj_dict_t*)&bytearray_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&bytearray_locals_dict,
};
#endif
@@ -729,9 +733,9 @@ const mp_obj_type_t mp_type_memoryview = {
.binary_op = array_binary_op,
.subscr = array_subscr,
.buffer_p = { .get_buffer = array_get_buffer },
-#if MICROPY_CPYTHON_COMPAT
- .locals_dict = (mp_obj_dict_t*)&memoryview_locals_dict,
-#endif
+ #if MICROPY_CPYTHON_COMPAT
+ .locals_dict = (mp_obj_dict_t *)&memoryview_locals_dict,
+ #endif
};
#endif
@@ -795,7 +799,7 @@ STATIC const mp_obj_type_t array_it_type = {
STATIC mp_obj_t array_iterator_new(mp_obj_t array_in, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_array_t) <= sizeof(mp_obj_iter_buf_t));
mp_obj_array_t *array = MP_OBJ_TO_PTR(array_in);
- mp_obj_array_it_t *o = (mp_obj_array_it_t*)iter_buf;
+ mp_obj_array_it_t *o = (mp_obj_array_it_t *)iter_buf;
o->base.type = &array_it_type;
o->array = array;
o->offset = 0;
diff --git a/py/objattrtuple.c b/py/objattrtuple.c
index ac9b808a2..2e75a23af 100644
--- a/py/objattrtuple.c
+++ b/py/objattrtuple.c
@@ -51,7 +51,7 @@ void mp_obj_attrtuple_print_helper(const mp_print_t *print, const qstr *fields,
STATIC void mp_obj_attrtuple_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind) {
(void)kind;
mp_obj_tuple_t *o = MP_OBJ_TO_PTR(o_in);
- const qstr *fields = (const qstr*)MP_OBJ_TO_PTR(o->items[o->len]);
+ const qstr *fields = (const qstr *)MP_OBJ_TO_PTR(o->items[o->len]);
mp_obj_attrtuple_print_helper(print, fields, o);
}
@@ -60,7 +60,7 @@ STATIC void mp_obj_attrtuple_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
// load attribute
mp_obj_tuple_t *self = MP_OBJ_TO_PTR(self_in);
size_t len = self->len;
- const qstr *fields = (const qstr*)MP_OBJ_TO_PTR(self->items[len]);
+ const qstr *fields = (const qstr *)MP_OBJ_TO_PTR(self->items[len]);
for (size_t i = 0; i < len; i++) {
if (fields[i] == attr) {
dest[0] = self->items[i];
diff --git a/py/objboundmeth.c b/py/objboundmeth.c
index 5bf25567f..cdb725797 100644
--- a/py/objboundmeth.c
+++ b/py/objboundmeth.c
@@ -102,13 +102,13 @@ STATIC void bound_meth_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
STATIC const mp_obj_type_t mp_type_bound_meth = {
{ &mp_type_type },
.name = MP_QSTR_bound_method,
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
.print = bound_meth_print,
-#endif
+ #endif
.call = bound_meth_call,
-#if MICROPY_PY_FUNCTION_ATTRS
+ #if MICROPY_PY_FUNCTION_ATTRS
.attr = bound_meth_attr,
-#endif
+ #endif
};
mp_obj_t mp_obj_new_bound_meth(mp_obj_t meth, mp_obj_t self) {
diff --git a/py/objcell.c b/py/objcell.c
index 25fe5232a..2e15e6825 100644
--- a/py/objcell.c
+++ b/py/objcell.c
@@ -58,9 +58,9 @@ STATIC void cell_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t k
STATIC const mp_obj_type_t mp_type_cell = {
{ &mp_type_type },
.name = MP_QSTR_, // cell representation is just value in < >
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
.print = cell_print,
-#endif
+ #endif
};
mp_obj_t mp_obj_new_cell(mp_obj_t obj) {
diff --git a/py/objclosure.c b/py/objclosure.c
index 6f6772ff1..e4e3b87bb 100644
--- a/py/objclosure.c
+++ b/py/objclosure.c
@@ -81,9 +81,9 @@ STATIC void closure_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_
const mp_obj_type_t closure_type = {
{ &mp_type_type },
.name = MP_QSTR_closure,
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
.print = closure_print,
-#endif
+ #endif
.call = closure_call,
};
diff --git a/py/objcomplex.c b/py/objcomplex.c
index 43e0690d3..5e80826c6 100644
--- a/py/objcomplex.c
+++ b/py/objcomplex.c
@@ -50,17 +50,17 @@ typedef struct _mp_obj_complex_t {
STATIC void complex_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind) {
(void)kind;
mp_obj_complex_t *o = MP_OBJ_TO_PTR(o_in);
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
char buf[16];
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_C
const int precision = 6;
#else
const int precision = 7;
#endif
-#else
+ #else
char buf[32];
const int precision = 16;
-#endif
+ #endif
if (o->real == 0) {
mp_format_float(o->imag, buf, sizeof(buf), 'g', precision, '\0');
mp_printf(print, "%sj", buf);
@@ -122,13 +122,18 @@ STATIC mp_obj_t complex_make_new(const mp_obj_type_t *type_in, size_t n_args, co
STATIC mp_obj_t complex_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mp_obj_complex_t *o = MP_OBJ_TO_PTR(o_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(o->real != 0 || o->imag != 0);
- case MP_UNARY_OP_HASH: return MP_OBJ_NEW_SMALL_INT(mp_float_hash(o->real) ^ mp_float_hash(o->imag));
- case MP_UNARY_OP_POSITIVE: return o_in;
- case MP_UNARY_OP_NEGATIVE: return mp_obj_new_complex(-o->real, -o->imag);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(o->real != 0 || o->imag != 0);
+ case MP_UNARY_OP_HASH:
+ return MP_OBJ_NEW_SMALL_INT(mp_float_hash(o->real) ^ mp_float_hash(o->imag));
+ case MP_UNARY_OP_POSITIVE:
+ return o_in;
+ case MP_UNARY_OP_NEGATIVE:
+ return mp_obj_new_complex(-o->real, -o->imag);
case MP_UNARY_OP_ABS:
- return mp_obj_new_float(MICROPY_FLOAT_C_FUN(sqrt)(o->real*o->real + o->imag*o->imag));
- default: return MP_OBJ_NULL; // op not supported
+ return mp_obj_new_float(MICROPY_FLOAT_C_FUN(sqrt)(o->real * o->real + o->imag * o->imag));
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -192,7 +197,7 @@ mp_obj_t mp_obj_complex_binary_op(mp_binary_op_t op, mp_float_t lhs_real, mp_flo
case MP_BINARY_OP_MULTIPLY:
case MP_BINARY_OP_INPLACE_MULTIPLY: {
mp_float_t real;
- multiply:
+ multiply:
real = lhs_real * rhs_real - lhs_imag * rhs_imag;
lhs_imag = lhs_real * rhs_imag + lhs_imag * rhs_real;
lhs_real = real;
@@ -215,7 +220,7 @@ mp_obj_t mp_obj_complex_binary_op(mp_binary_op_t op, mp_float_t lhs_real, mp_flo
lhs_imag = -lhs_real / rhs_imag;
lhs_real = real;
} else {
- mp_float_t rhs_len_sq = rhs_real*rhs_real + rhs_imag*rhs_imag;
+ mp_float_t rhs_len_sq = rhs_real * rhs_real + rhs_imag * rhs_imag;
rhs_real /= rhs_len_sq;
rhs_imag /= -rhs_len_sq;
goto multiply;
@@ -229,7 +234,7 @@ mp_obj_t mp_obj_complex_binary_op(mp_binary_op_t op, mp_float_t lhs_real, mp_flo
// = exp( (x2*ln1 - y2*arg1) + i*(y2*ln1 + x2*arg1) )
// = exp(x3 + i*y3)
// = exp(x3)*(cos(y3) + i*sin(y3))
- mp_float_t abs1 = MICROPY_FLOAT_C_FUN(sqrt)(lhs_real*lhs_real + lhs_imag*lhs_imag);
+ mp_float_t abs1 = MICROPY_FLOAT_C_FUN(sqrt)(lhs_real * lhs_real + lhs_imag * lhs_imag);
if (abs1 == 0) {
if (rhs_imag == 0 && rhs_real >= 0) {
lhs_real = (rhs_real == 0);
@@ -248,7 +253,8 @@ mp_obj_t mp_obj_complex_binary_op(mp_binary_op_t op, mp_float_t lhs_real, mp_flo
break;
}
- case MP_BINARY_OP_EQUAL: return mp_obj_new_bool(lhs_real == rhs_real && lhs_imag == rhs_imag);
+ case MP_BINARY_OP_EQUAL:
+ return mp_obj_new_bool(lhs_real == rhs_real && lhs_imag == rhs_imag);
default:
return MP_OBJ_NULL; // op not supported
diff --git a/py/objdeque.c b/py/objdeque.c
index b2785b5b6..d9d8c0415 100644
--- a/py/objdeque.c
+++ b/py/objdeque.c
@@ -163,7 +163,7 @@ const mp_obj_type_t mp_type_deque = {
.name = MP_QSTR_deque,
.make_new = deque_make_new,
.unary_op = deque_unary_op,
- .locals_dict = (mp_obj_dict_t*)&deque_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&deque_locals_dict,
};
#endif // MICROPY_PY_COLLECTIONS_DEQUE
diff --git a/py/objdict.c b/py/objdict.c
index 098aec5d2..24484566f 100644
--- a/py/objdict.c
+++ b/py/objdict.c
@@ -34,7 +34,7 @@
#include "supervisor/linker.h"
#include "supervisor/shared/translate.h"
-#define MP_OBJ_IS_DICT_TYPE(o) (MP_OBJ_IS_OBJ(o) && ((mp_obj_base_t*)MP_OBJ_TO_PTR(o))->type->make_new == dict_make_new)
+#define MP_OBJ_IS_DICT_TYPE(o) (MP_OBJ_IS_OBJ(o) && ((mp_obj_base_t *)MP_OBJ_TO_PTR(o))->type->make_new == dict_make_new)
STATIC mp_obj_t dict_update(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs);
@@ -104,15 +104,18 @@ STATIC mp_obj_t dict_make_new(const mp_obj_type_t *type, size_t n_args, const mp
STATIC mp_obj_t dict_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
mp_obj_dict_t *self = MP_OBJ_TO_PTR(self_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(self->map.used != 0);
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(self->map.used);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(self->map.used != 0);
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(self->map.used);
#if MICROPY_PY_SYS_GETSIZEOF
case MP_UNARY_OP_SIZEOF: {
size_t sz = sizeof(*self) + sizeof(*self->map.table) * self->map.alloc;
return MP_OBJ_NEW_SMALL_INT(sz);
}
#endif
- default: return MP_OBJ_NULL; // op not supported
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -340,7 +343,7 @@ STATIC mp_obj_t PLACE_IN_ITCM(dict_update)(size_t n_args, const mp_obj_t *args,
if (args[1] != args[0]) {
size_t cur = 0;
mp_map_elem_t *elem = NULL;
- while ((elem = dict_iter_next((mp_obj_dict_t*)MP_OBJ_TO_PTR(args[1]), &cur)) != NULL) {
+ while ((elem = dict_iter_next((mp_obj_dict_t *)MP_OBJ_TO_PTR(args[1]), &cur)) != NULL) {
mp_map_lookup(&self->map, elem->key, MP_MAP_LOOKUP_ADD_IF_NOT_FOUND)->value = elem->value;
}
}
@@ -436,7 +439,7 @@ STATIC mp_obj_t dict_view_getiter(mp_obj_t view_in, mp_obj_iter_buf_t *iter_buf)
assert(sizeof(mp_obj_dict_view_it_t) <= sizeof(mp_obj_iter_buf_t));
mp_check_self(MP_OBJ_IS_TYPE(view_in, &dict_view_type));
mp_obj_dict_view_t *view = MP_OBJ_TO_PTR(view_in);
- mp_obj_dict_view_it_t *o = (mp_obj_dict_view_it_t*)iter_buf;
+ mp_obj_dict_view_it_t *o = (mp_obj_dict_view_it_t *)iter_buf;
o->base.type = &dict_view_it_type;
o->kind = view->kind;
o->dict = view->dict;
@@ -518,7 +521,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(dict_values_obj, dict_values);
STATIC mp_obj_t dict_getiter(mp_obj_t self_in, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_dict_view_it_t) <= sizeof(mp_obj_iter_buf_t));
mp_check_self(MP_OBJ_IS_DICT_TYPE(self_in));
- mp_obj_dict_view_it_t *o = (mp_obj_dict_view_it_t*)iter_buf;
+ mp_obj_dict_view_it_t *o = (mp_obj_dict_view_it_t *)iter_buf;
o->base.type = &dict_view_it_type;
o->kind = MP_DICT_VIEW_KEYS;
o->dict = self_in;
@@ -557,7 +560,7 @@ const mp_obj_type_t mp_type_dict = {
.binary_op = dict_binary_op,
.subscr = dict_subscr,
.getiter = dict_getiter,
- .locals_dict = (mp_obj_dict_t*)&dict_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&dict_locals_dict,
};
#if MICROPY_PY_COLLECTIONS_ORDEREDDICT
@@ -571,7 +574,7 @@ const mp_obj_type_t mp_type_ordereddict = {
.subscr = dict_subscr,
.getiter = dict_getiter,
.parent = &mp_type_dict,
- .locals_dict = (mp_obj_dict_t*)&dict_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&dict_locals_dict,
};
#endif
diff --git a/py/objenumerate.c b/py/objenumerate.c
index dee7fc760..2c2131ad4 100644
--- a/py/objenumerate.c
+++ b/py/objenumerate.c
@@ -40,7 +40,7 @@ typedef struct _mp_obj_enumerate_t {
STATIC mp_obj_t enumerate_iternext(mp_obj_t self_in);
STATIC mp_obj_t enumerate_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
static const mp_arg_t allowed_args[] = {
{ MP_QSTR_iterable, MP_ARG_REQUIRED | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
{ MP_QSTR_start, MP_ARG_INT, {.u_int = 0} },
@@ -51,20 +51,20 @@ STATIC mp_obj_t enumerate_make_new(const mp_obj_type_t *type, size_t n_args, con
mp_arg_val_t iterable, start;
} arg_vals;
mp_arg_parse_all(n_args, args, kw_args,
- MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t*)&arg_vals);
+ MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t *)&arg_vals);
// create enumerate object
mp_obj_enumerate_t *o = m_new_obj(mp_obj_enumerate_t);
o->base.type = type;
o->iter = mp_getiter(arg_vals.iterable.u_obj, NULL);
o->cur = arg_vals.start.u_int;
-#else
+ #else
(void)kw_args;
mp_obj_enumerate_t *o = m_new_obj(mp_obj_enumerate_t);
o->base.type = type;
o->iter = mp_getiter(args[0], NULL);
o->cur = n_args > 1 ? mp_obj_get_int(args[1]) : 0;
-#endif
+ #endif
return MP_OBJ_FROM_PTR(o);
}
diff --git a/py/objexcept.c b/py/objexcept.c
index afefee2ca..fb6424fa4 100644
--- a/py/objexcept.c
+++ b/py/objexcept.c
@@ -49,7 +49,7 @@
// Optionally allocated buffer for storing the first argument of an exception
// allocated when the heap is locked.
#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
-# if MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE > 0
+#if MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE > 0
#define mp_emergency_exception_buf_size MICROPY_EMERGENCY_EXCEPTION_BUF_SIZE
void mp_init_emergency_exception_buf(void) {
@@ -94,7 +94,7 @@ mp_obj_t mp_alloc_emergency_exception_buf(mp_obj_t size_in) {
// Instance of GeneratorExit exception - needed by generator.close()
// This would belong to objgenerator.c, but to keep mp_obj_exception_t
// definition module-private so far, have it here.
-const mp_obj_exception_t mp_const_GeneratorExit_obj = {{&mp_type_GeneratorExit}, 0, 0, NULL, (mp_obj_tuple_t*)&mp_const_empty_tuple_obj};
+const mp_obj_exception_t mp_const_GeneratorExit_obj = {{&mp_type_GeneratorExit}, 0, 0, NULL, (mp_obj_tuple_t *)&mp_const_empty_tuple_obj};
void mp_obj_exception_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind) {
mp_obj_exception_t *o = MP_OBJ_TO_PTR(o_in);
@@ -152,7 +152,7 @@ mp_obj_t mp_obj_exception_make_new(const mp_obj_type_t *type, size_t n_args, con
mp_obj_tuple_t *o_tuple;
if (n_args == 0) {
// No args, can use the empty tuple straightaway
- o_tuple = (mp_obj_tuple_t*)&mp_const_empty_tuple_obj;
+ o_tuple = (mp_obj_tuple_t *)&mp_const_empty_tuple_obj;
} else {
// Try to allocate memory for the tuple containing the args
o_tuple = m_new_obj_var_maybe(mp_obj_tuple_t, mp_obj_t, n_args);
@@ -163,14 +163,14 @@ mp_obj_t mp_obj_exception_make_new(const mp_obj_type_t *type, size_t n_args, con
// Otherwise we are free to use the whole buffer after the traceback data.
if (o_tuple == NULL && mp_emergency_exception_buf_size >=
EMG_TRACEBACK_ALLOC * sizeof(size_t) + sizeof(mp_obj_tuple_t) + n_args * sizeof(mp_obj_t)) {
- o_tuple = (mp_obj_tuple_t*)
- ((uint8_t*)MP_STATE_VM(mp_emergency_exception_buf) + EMG_TRACEBACK_ALLOC * sizeof(size_t));
+ o_tuple = (mp_obj_tuple_t *)
+ ((uint8_t *)MP_STATE_VM(mp_emergency_exception_buf) + EMG_TRACEBACK_ALLOC * sizeof(size_t));
}
#endif
if (o_tuple == NULL) {
// No memory for a tuple, fallback to an empty tuple
- o_tuple = (mp_obj_tuple_t*)&mp_const_empty_tuple_obj;
+ o_tuple = (mp_obj_tuple_t *)&mp_const_empty_tuple_obj;
} else {
// Have memory for a tuple so populate it
o_tuple->base.type = &mp_type_tuple;
@@ -235,7 +235,7 @@ void mp_obj_exception_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
}
} else if (attr == MP_QSTR_filename) {
dest[0] = self->args->len > 2 ? self->args->items[2] : mp_const_none;
- // skip winerror
+ // skip winerror
} else if (attr == MP_QSTR_filename2) {
dest[0] = self->args->len > 4 ? self->args->items[4] : mp_const_none;
}
@@ -259,38 +259,38 @@ MP_DEFINE_EXCEPTION(ReloadException, BaseException)
MP_DEFINE_EXCEPTION(GeneratorExit, BaseException)
MP_DEFINE_EXCEPTION(Exception, BaseException)
#if MICROPY_PY_ASYNC_AWAIT
- MP_DEFINE_EXCEPTION(StopAsyncIteration, Exception)
+MP_DEFINE_EXCEPTION(StopAsyncIteration, Exception)
#endif
- MP_DEFINE_EXCEPTION(StopIteration, Exception)
- MP_DEFINE_EXCEPTION(ArithmeticError, Exception)
- //MP_DEFINE_EXCEPTION(FloatingPointError, ArithmeticError)
- MP_DEFINE_EXCEPTION(OverflowError, ArithmeticError)
- MP_DEFINE_EXCEPTION(ZeroDivisionError, ArithmeticError)
- MP_DEFINE_EXCEPTION(AssertionError, Exception)
- MP_DEFINE_EXCEPTION(AttributeError, Exception)
- //MP_DEFINE_EXCEPTION(BufferError, Exception)
- //MP_DEFINE_EXCEPTION(EnvironmentError, Exception) use OSError instead
- MP_DEFINE_EXCEPTION(EOFError, Exception)
- MP_DEFINE_EXCEPTION(ImportError, Exception)
- //MP_DEFINE_EXCEPTION(IOError, Exception) use OSError instead
- MP_DEFINE_EXCEPTION(LookupError, Exception)
- MP_DEFINE_EXCEPTION(IndexError, LookupError)
- MP_DEFINE_EXCEPTION(KeyError, LookupError)
- MP_DEFINE_EXCEPTION(MemoryError, Exception)
- MP_DEFINE_EXCEPTION(NameError, Exception)
- /*
+MP_DEFINE_EXCEPTION(StopIteration, Exception)
+MP_DEFINE_EXCEPTION(ArithmeticError, Exception)
+// MP_DEFINE_EXCEPTION(FloatingPointError, ArithmeticError)
+MP_DEFINE_EXCEPTION(OverflowError, ArithmeticError)
+MP_DEFINE_EXCEPTION(ZeroDivisionError, ArithmeticError)
+MP_DEFINE_EXCEPTION(AssertionError, Exception)
+MP_DEFINE_EXCEPTION(AttributeError, Exception)
+// MP_DEFINE_EXCEPTION(BufferError, Exception)
+// MP_DEFINE_EXCEPTION(EnvironmentError, Exception) use OSError instead
+MP_DEFINE_EXCEPTION(EOFError, Exception)
+MP_DEFINE_EXCEPTION(ImportError, Exception)
+// MP_DEFINE_EXCEPTION(IOError, Exception) use OSError instead
+MP_DEFINE_EXCEPTION(LookupError, Exception)
+MP_DEFINE_EXCEPTION(IndexError, LookupError)
+MP_DEFINE_EXCEPTION(KeyError, LookupError)
+MP_DEFINE_EXCEPTION(MemoryError, Exception)
+MP_DEFINE_EXCEPTION(NameError, Exception)
+/*
MP_DEFINE_EXCEPTION(UnboundLocalError, NameError)
*/
- MP_DEFINE_EXCEPTION(OSError, Exception)
- MP_DEFINE_EXCEPTION(TimeoutError, OSError)
- MP_DEFINE_EXCEPTION(ConnectionError, OSError)
- MP_DEFINE_EXCEPTION(BrokenPipeError, ConnectionError)
- /*
+MP_DEFINE_EXCEPTION(OSError, Exception)
+MP_DEFINE_EXCEPTION(TimeoutError, OSError)
+MP_DEFINE_EXCEPTION(ConnectionError, OSError)
+MP_DEFINE_EXCEPTION(BrokenPipeError, ConnectionError)
+/*
MP_DEFINE_EXCEPTION(ConnectionAbortedError, ConnectionError)
MP_DEFINE_EXCEPTION(ConnectionRefusedError, ConnectionError)
MP_DEFINE_EXCEPTION(ConnectionResetError, ConnectionError)
*/
- /*
+/*
MP_DEFINE_EXCEPTION(BlockingIOError, OSError)
MP_DEFINE_EXCEPTION(ChildProcessError, OSError)
MP_DEFINE_EXCEPTION(InterruptedError, OSError)
@@ -302,28 +302,28 @@ MP_DEFINE_EXCEPTION(Exception, BaseException)
MP_DEFINE_EXCEPTION(FileNotFoundError, OSError)
MP_DEFINE_EXCEPTION(ReferenceError, Exception)
*/
- MP_DEFINE_EXCEPTION(RuntimeError, Exception)
- MP_DEFINE_EXCEPTION(NotImplementedError, RuntimeError)
- MP_DEFINE_EXCEPTION(SyntaxError, Exception)
- MP_DEFINE_EXCEPTION(IndentationError, SyntaxError)
- /*
+MP_DEFINE_EXCEPTION(RuntimeError, Exception)
+MP_DEFINE_EXCEPTION(NotImplementedError, RuntimeError)
+MP_DEFINE_EXCEPTION(SyntaxError, Exception)
+MP_DEFINE_EXCEPTION(IndentationError, SyntaxError)
+/*
MP_DEFINE_EXCEPTION(TabError, IndentationError)
*/
- //MP_DEFINE_EXCEPTION(SystemError, Exception)
- MP_DEFINE_EXCEPTION(TypeError, Exception)
+// MP_DEFINE_EXCEPTION(SystemError, Exception)
+MP_DEFINE_EXCEPTION(TypeError, Exception)
#if MICROPY_EMIT_NATIVE
- MP_DEFINE_EXCEPTION(ViperTypeError, TypeError)
+MP_DEFINE_EXCEPTION(ViperTypeError, TypeError)
#endif
- MP_DEFINE_EXCEPTION(ValueError, Exception)
+MP_DEFINE_EXCEPTION(ValueError, Exception)
#if MICROPY_PY_BUILTINS_STR_UNICODE
- MP_DEFINE_EXCEPTION(UnicodeError, ValueError)
- //TODO: Implement more UnicodeError subclasses which take arguments
+MP_DEFINE_EXCEPTION(UnicodeError, ValueError)
+// TODO: Implement more UnicodeError subclasses which take arguments
#endif
#if CIRCUITPY_ALARM
- MP_DEFINE_EXCEPTION(DeepSleepRequest, BaseException)
+MP_DEFINE_EXCEPTION(DeepSleepRequest, BaseException)
#endif
- MP_DEFINE_EXCEPTION(MpyError, ValueError)
- /*
+MP_DEFINE_EXCEPTION(MpyError, ValueError)
+/*
MP_DEFINE_EXCEPTION(Warning, Exception)
MP_DEFINE_EXCEPTION(DeprecationWarning, Warning)
MP_DEFINE_EXCEPTION(PendingDeprecationWarning, Warning)
@@ -415,12 +415,12 @@ mp_obj_t mp_obj_new_exception_msg_vlist(const mp_obj_type_t *exc_type, const com
// the string data), reserving room at the start for the traceback and 1-tuple.
if ((o_str == NULL || o_str_buf == NULL)
&& mp_emergency_exception_buf_size >= EMG_TRACEBACK_ALLOC * sizeof(size_t)
- + sizeof(mp_obj_tuple_t) + sizeof(mp_obj_t) + sizeof(mp_obj_str_t) + 16) {
+ + sizeof(mp_obj_tuple_t) + sizeof(mp_obj_t) + sizeof(mp_obj_str_t) + 16) {
used_emg_buf = true;
- o_str = (mp_obj_str_t*)((uint8_t*)MP_STATE_VM(mp_emergency_exception_buf)
+ o_str = (mp_obj_str_t *)((uint8_t *)MP_STATE_VM(mp_emergency_exception_buf)
+ EMG_TRACEBACK_ALLOC * sizeof(size_t) + sizeof(mp_obj_tuple_t) + sizeof(mp_obj_t));
- o_str_buf = (byte*)&o_str[1];
- o_str_alloc = (uint8_t*)MP_STATE_VM(mp_emergency_exception_buf)
+ o_str_buf = (byte *)&o_str[1];
+ o_str_alloc = (uint8_t *)MP_STATE_VM(mp_emergency_exception_buf)
+ mp_emergency_exception_buf_size - o_str_buf;
}
#endif
@@ -490,7 +490,7 @@ bool mp_obj_exception_match(mp_obj_t exc, mp_const_obj_t exc_type) {
if (mp_obj_is_native_exception_instance(self_in)) { \
self = MP_OBJ_TO_PTR(self_in); \
} else { \
- self = MP_OBJ_TO_PTR(((mp_obj_instance_t*)MP_OBJ_TO_PTR(self_in))->subobj[0]); \
+ self = MP_OBJ_TO_PTR(((mp_obj_instance_t *)MP_OBJ_TO_PTR(self_in))->subobj[0]); \
}
void mp_obj_exception_clear_traceback(mp_obj_t self_in) {
@@ -512,7 +512,7 @@ void mp_obj_exception_add_traceback(mp_obj_t self_in, qstr file, size_t line, qs
#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
if (mp_emergency_exception_buf_size >= EMG_TRACEBACK_ALLOC * sizeof(size_t)) {
// There is room in the emergency buffer for traceback data
- size_t *tb = (size_t*)MP_STATE_VM(mp_emergency_exception_buf);
+ size_t *tb = (size_t *)MP_STATE_VM(mp_emergency_exception_buf);
self->traceback_data = tb;
self->traceback_alloc = EMG_TRACEBACK_ALLOC;
} else {
@@ -530,7 +530,7 @@ void mp_obj_exception_add_traceback(mp_obj_t self_in, qstr file, size_t line, qs
self->traceback_len = 0;
} else if (self->traceback_len + TRACEBACK_ENTRY_LEN > self->traceback_alloc) {
#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
- if (self->traceback_data == (size_t*)MP_STATE_VM(mp_emergency_exception_buf)) {
+ if (self->traceback_data == (size_t *)MP_STATE_VM(mp_emergency_exception_buf)) {
// Can't resize the emergency buffer
return;
}
@@ -619,7 +619,7 @@ STATIC mp_obj_t code_make_new(qstr file, qstr block) {
mp_obj_new_bytearray(0, NULL), // co_lnotab
};
- return namedtuple_make_new((const mp_obj_type_t*)&code_type_obj, 15, elems, NULL);
+ return namedtuple_make_new((const mp_obj_type_t *)&code_type_obj, 15, elems, NULL);
}
STATIC const mp_obj_namedtuple_type_t frame_type_obj = {
@@ -662,7 +662,7 @@ STATIC mp_obj_t frame_make_new(mp_obj_t f_code, int f_lineno) {
mp_const_none, // f_trace
};
- return namedtuple_make_new((const mp_obj_type_t*)&frame_type_obj, 8, elems, NULL);
+ return namedtuple_make_new((const mp_obj_type_t *)&frame_type_obj, 8, elems, NULL);
}
STATIC const mp_obj_namedtuple_type_t traceback_type_obj = {
@@ -699,7 +699,7 @@ STATIC mp_obj_t traceback_from_values(size_t *values, mp_obj_t tb_next) {
tb_next,
};
- return namedtuple_make_new((const mp_obj_type_t*)&traceback_type_obj, 4, elems, NULL);
+ return namedtuple_make_new((const mp_obj_type_t *)&traceback_type_obj, 4, elems, NULL);
};
mp_obj_t mp_obj_exception_get_traceback_obj(mp_obj_t self_in) {
diff --git a/py/objexcept.h b/py/objexcept.h
index c19658427..d7b39add8 100644
--- a/py/objexcept.h
+++ b/py/objexcept.h
@@ -41,13 +41,13 @@ void mp_obj_exception_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kin
void mp_obj_exception_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest);
#define MP_DEFINE_EXCEPTION(exc_name, base_name) \
-const mp_obj_type_t mp_type_ ## exc_name = { \
- { &mp_type_type }, \
- .name = MP_QSTR_ ## exc_name, \
- .print = mp_obj_exception_print, \
- .make_new = mp_obj_exception_make_new, \
- .attr = mp_obj_exception_attr, \
- .parent = &mp_type_ ## base_name, \
-};
+ const mp_obj_type_t mp_type_##exc_name = { \
+ { &mp_type_type }, \
+ .name = MP_QSTR_##exc_name, \
+ .print = mp_obj_exception_print, \
+ .make_new = mp_obj_exception_make_new, \
+ .attr = mp_obj_exception_attr, \
+ .parent = &mp_type_##base_name, \
+ };
#endif // MICROPY_INCLUDED_PY_OBJEXCEPT_H
diff --git a/py/objfloat.c b/py/objfloat.c
index 329a8b90e..5c0a87ea3 100644
--- a/py/objfloat.c
+++ b/py/objfloat.c
@@ -65,17 +65,19 @@ const mp_obj_float_t mp_const_float_pi_obj = {{&mp_type_float}, M_PI};
#if MICROPY_FLOAT_HIGH_QUALITY_HASH
// must return actual integer value if it fits in mp_int_t
mp_int_t mp_float_hash(mp_float_t src) {
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
-typedef uint64_t mp_float_uint_t;
-#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
-typedef uint32_t mp_float_uint_t;
-#endif
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ typedef uint64_t mp_float_uint_t;
+ #elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ typedef uint32_t mp_float_uint_t;
+ #endif
union {
mp_float_t f;
#if MP_ENDIANNESS_LITTLE
- struct { mp_float_uint_t frc:MP_FLOAT_FRAC_BITS, exp:MP_FLOAT_EXP_BITS, sgn:1; } p;
+ struct { mp_float_uint_t frc : MP_FLOAT_FRAC_BITS, exp : MP_FLOAT_EXP_BITS, sgn : 1;
+ } p;
#else
- struct { mp_float_uint_t sgn:1, exp:MP_FLOAT_EXP_BITS, frc:MP_FLOAT_FRAC_BITS; } p;
+ struct { mp_float_uint_t sgn : 1, exp : MP_FLOAT_EXP_BITS, frc : MP_FLOAT_FRAC_BITS;
+ } p;
#endif
mp_float_uint_t i;
} u = {.f = src};
@@ -114,17 +116,17 @@ typedef uint32_t mp_float_uint_t;
STATIC void float_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind) {
(void)kind;
mp_float_t o_val = mp_obj_float_get(o_in);
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
char buf[16];
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_C
const int precision = 6;
#else
const int precision = 7;
#endif
-#else
+ #else
char buf[32];
const int precision = 16;
-#endif
+ #endif
mp_format_float(o_val, buf, sizeof(buf), 'g', precision, '\0');
mp_print_str(print, buf);
if (strchr(buf, '.') == NULL && strchr(buf, 'e') == NULL && strchr(buf, 'n') == NULL) {
@@ -161,10 +163,14 @@ STATIC mp_obj_t float_make_new(const mp_obj_type_t *type_in, size_t n_args, cons
STATIC mp_obj_t float_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mp_float_t val = mp_obj_float_get(o_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(val != 0);
- case MP_UNARY_OP_HASH: return MP_OBJ_NEW_SMALL_INT(mp_float_hash(val));
- case MP_UNARY_OP_POSITIVE: return o_in;
- case MP_UNARY_OP_NEGATIVE: return mp_obj_new_float(-val);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(val != 0);
+ case MP_UNARY_OP_HASH:
+ return MP_OBJ_NEW_SMALL_INT(mp_float_hash(val));
+ case MP_UNARY_OP_POSITIVE:
+ return o_in;
+ case MP_UNARY_OP_NEGATIVE:
+ return mp_obj_new_float(-val);
case MP_UNARY_OP_ABS: {
// TODO check for NaN etc
if (val < 0) {
@@ -173,17 +179,18 @@ STATIC mp_obj_t float_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
return o_in;
}
}
- default: return MP_OBJ_NULL; // op not supported
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
STATIC mp_obj_t float_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_in) {
mp_float_t lhs_val = mp_obj_float_get(lhs_in);
-#if MICROPY_PY_BUILTINS_COMPLEX
+ #if MICROPY_PY_BUILTINS_COMPLEX
if (MP_OBJ_IS_TYPE(rhs_in, &mp_type_complex)) {
return mp_obj_complex_binary_op(op, lhs_val, 0, rhs_in);
} else
-#endif
+ #endif
{
return mp_obj_float_binary_op(op, lhs_val, rhs_in);
}
@@ -258,15 +265,21 @@ mp_obj_t mp_obj_float_binary_op(mp_binary_op_t op, mp_float_t lhs_val, mp_obj_t
switch (op) {
case MP_BINARY_OP_ADD:
- case MP_BINARY_OP_INPLACE_ADD: lhs_val += rhs_val; break;
+ case MP_BINARY_OP_INPLACE_ADD:
+ lhs_val += rhs_val;
+ break;
case MP_BINARY_OP_SUBTRACT:
- case MP_BINARY_OP_INPLACE_SUBTRACT: lhs_val -= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_SUBTRACT:
+ lhs_val -= rhs_val;
+ break;
case MP_BINARY_OP_MULTIPLY:
- case MP_BINARY_OP_INPLACE_MULTIPLY: lhs_val *= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_MULTIPLY:
+ lhs_val *= rhs_val;
+ break;
case MP_BINARY_OP_FLOOR_DIVIDE:
case MP_BINARY_OP_INPLACE_FLOOR_DIVIDE:
if (rhs_val == 0) {
- zero_division_error:
+ zero_division_error:
mp_raise_msg(&mp_type_ZeroDivisionError, translate("division by zero"));
}
// Python specs require that x == (x//y)*y + (x%y) so we must
@@ -321,11 +334,16 @@ mp_obj_t mp_obj_float_binary_op(mp_binary_op_t op, mp_float_t lhs_val, mp_obj_t
};
return mp_obj_new_tuple(2, tuple);
}
- case MP_BINARY_OP_LESS: return mp_obj_new_bool(lhs_val < rhs_val);
- case MP_BINARY_OP_MORE: return mp_obj_new_bool(lhs_val > rhs_val);
- case MP_BINARY_OP_EQUAL: return mp_obj_new_bool(lhs_val == rhs_val);
- case MP_BINARY_OP_LESS_EQUAL: return mp_obj_new_bool(lhs_val <= rhs_val);
- case MP_BINARY_OP_MORE_EQUAL: return mp_obj_new_bool(lhs_val >= rhs_val);
+ case MP_BINARY_OP_LESS:
+ return mp_obj_new_bool(lhs_val < rhs_val);
+ case MP_BINARY_OP_MORE:
+ return mp_obj_new_bool(lhs_val > rhs_val);
+ case MP_BINARY_OP_EQUAL:
+ return mp_obj_new_bool(lhs_val == rhs_val);
+ case MP_BINARY_OP_LESS_EQUAL:
+ return mp_obj_new_bool(lhs_val <= rhs_val);
+ case MP_BINARY_OP_MORE_EQUAL:
+ return mp_obj_new_bool(lhs_val >= rhs_val);
default:
return MP_OBJ_NULL; // op not supported
@@ -337,7 +355,7 @@ mp_obj_t mp_obj_float_binary_op(mp_binary_op_t op, mp_float_t lhs_val, mp_obj_t
// which are large.
mp_float_t uint64_to_float(uint64_t ui64) {
// 4294967296 = 2^32
- return (mp_float_t) ((uint32_t) (ui64 >> 32) * 4294967296.0f + (uint32_t) (ui64 & 0xffffffff));
+ return (mp_float_t)((uint32_t)(ui64 >> 32) * 4294967296.0f + (uint32_t)(ui64 & 0xffffffff));
}
// Convert a uint64_t to a 32-bit float to a uint64_t without invoking extra math routines.
@@ -345,9 +363,9 @@ mp_float_t uint64_to_float(uint64_t ui64) {
// Assume f >= 0.
uint64_t float_to_uint64(float f) {
// 4294967296 = 2^32
- const uint32_t upper_half = (uint32_t) (f / 4294967296.0f);
- const uint32_t lower_half = (uint32_t) f;
- return (((uint64_t) upper_half) << 32) + lower_half;
+ const uint32_t upper_half = (uint32_t)(f / 4294967296.0f);
+ const uint32_t lower_half = (uint32_t)f;
+ return (((uint64_t)upper_half) << 32) + lower_half;
}
#pragma GCC diagnostic pop
diff --git a/py/objfun.c b/py/objfun.c
index 933044ef7..69045c632 100644
--- a/py/objfun.c
+++ b/py/objfun.c
@@ -210,7 +210,7 @@ STATIC void dump_args(const mp_obj_t *a, size_t sz) {
\
/* state size in bytes */ \
state_size_out_var = n_state_out_var * sizeof(mp_obj_t) \
- + n_exc_stack * sizeof(mp_exc_stack_t); \
+ + n_exc_stack * sizeof(mp_exc_stack_t); \
}
#define INIT_CODESTATE(code_state, _fun_bc, n_args, n_kw, args) \
@@ -286,7 +286,7 @@ STATIC mp_obj_t PLACE_IN_ITCM(fun_bc_call)(mp_obj_t self_in, size_t n_args, size
mp_vm_return_kind_t vm_return_kind = mp_execute_bytecode(code_state, MP_OBJ_NULL);
mp_globals_set(code_state->old_globals);
-#if VM_DETECT_STACK_OVERFLOW
+ #if VM_DETECT_STACK_OVERFLOW
if (vm_return_kind == MP_VM_RETURN_NORMAL) {
if (code_state->sp < code_state->state) {
printf("VM stack underflow: " INT_FMT "\n", code_state->sp - code_state->state);
@@ -310,7 +310,7 @@ STATIC mp_obj_t PLACE_IN_ITCM(fun_bc_call)(mp_obj_t self_in, size_t n_args, size
assert(0);
}
}
-#endif
+ #endif
mp_obj_t result;
if (vm_return_kind == MP_VM_RETURN_NORMAL) {
@@ -354,14 +354,14 @@ STATIC void fun_bc_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
const mp_obj_type_t mp_type_fun_bc = {
{ &mp_type_type },
.name = MP_QSTR_function,
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
.print = fun_bc_print,
-#endif
+ #endif
.call = fun_bc_call,
.unary_op = mp_generic_unary_op,
-#if MICROPY_PY_FUNCTION_ATTRS
+ #if MICROPY_PY_FUNCTION_ATTRS
.attr = fun_bc_attr,
-#endif
+ #endif
};
mp_obj_t mp_obj_new_fun_bc(mp_obj_t def_args_in, mp_obj_t def_kw_args, const byte *code, const mp_uint_t *const_table) {
@@ -398,7 +398,7 @@ mp_obj_t mp_obj_new_fun_bc(mp_obj_t def_args_in, mp_obj_t def_kw_args, const byt
STATIC mp_obj_t fun_native_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const mp_obj_t *args) {
MP_STACK_CHECK();
mp_obj_fun_bc_t *self = self_in;
- mp_call_fun_t fun = MICROPY_MAKE_POINTER_CALLABLE((void*)self->bytecode);
+ mp_call_fun_t fun = MICROPY_MAKE_POINTER_CALLABLE((void *)self->bytecode);
return fun(self_in, n_args, n_kw, args);
}
@@ -410,7 +410,7 @@ STATIC const mp_obj_type_t mp_type_fun_native = {
};
mp_obj_t mp_obj_new_fun_native(mp_obj_t def_args_in, mp_obj_t def_kw_args, const void *fun_data, const mp_uint_t *const_table) {
- mp_obj_fun_bc_t *o = mp_obj_new_fun_bc(def_args_in, def_kw_args, (const byte*)fun_data, const_table);
+ mp_obj_fun_bc_t *o = mp_obj_new_fun_bc(def_args_in, def_kw_args, (const byte *)fun_data, const_table);
o->base.type = &mp_type_fun_native;
return o;
}
@@ -459,7 +459,7 @@ STATIC mp_obj_t fun_viper_call(mp_obj_t self_in, size_t n_args, size_t n_kw, con
mp_convert_obj_to_native(args[1], self->type_sig >> 8),
mp_convert_obj_to_native(args[2], self->type_sig >> 12),
mp_convert_obj_to_native(args[3], self->type_sig >> 16)
- );
+ );
}
return mp_convert_native_to_obj(ret, self->type_sig);
@@ -521,11 +521,11 @@ STATIC mp_uint_t convert_obj_for_inline_asm(mp_obj_t obj) {
} else {
mp_obj_type_t *type = mp_obj_get_type(obj);
if (0) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (type == &mp_type_float) {
// convert float to int (could also pass in float registers)
return (mp_int_t)mp_obj_float_get(obj);
-#endif
+ #endif
} else if (type == &mp_type_tuple || type == &mp_type_list) {
// pointer to start of tuple (could pass length, but then could use len(x) for that)
size_t len;
@@ -569,7 +569,7 @@ STATIC mp_obj_t fun_asm_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const
convert_obj_for_inline_asm(args[1]),
convert_obj_for_inline_asm(args[2]),
convert_obj_for_inline_asm(args[3])
- );
+ );
}
return mp_convert_native_to_obj(ret, self->type_sig);
diff --git a/py/objgenerator.c b/py/objgenerator.c
index 5e651ac26..9ca5812d8 100644
--- a/py/objgenerator.c
+++ b/py/objgenerator.c
@@ -54,7 +54,7 @@ typedef struct _mp_obj_gen_instance_t {
STATIC mp_obj_t gen_wrap_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const mp_obj_t *args) {
mp_obj_gen_wrap_t *self = MP_OBJ_TO_PTR(self_in);
- mp_obj_fun_bc_t *self_fun = (mp_obj_fun_bc_t*)self->fun;
+ mp_obj_fun_bc_t *self_fun = (mp_obj_fun_bc_t *)self->fun;
assert(self_fun->base.type == &mp_type_fun_bc);
// bytecode prelude: get state size and exception stack size
@@ -95,12 +95,12 @@ mp_obj_t mp_obj_new_gen_wrap(mp_obj_t fun, bool is_coroutine) {
STATIC void gen_instance_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) {
(void)kind;
mp_obj_gen_instance_t *self = MP_OBJ_TO_PTR(self_in);
-#if MICROPY_PY_ASYNC_AWAIT
+ #if MICROPY_PY_ASYNC_AWAIT
if (self->coroutine_generator) {
mp_printf(print, "<coroutine object '%q' at %p>", mp_obj_fun_get_name(MP_OBJ_FROM_PTR(self->code_state.fun_bc)), self);
return;
}
-#endif
+ #endif
mp_printf(print, "<generator object '%q' at %p>", mp_obj_fun_get_name(MP_OBJ_FROM_PTR(self->code_state.fun_bc)), self);
}
@@ -204,13 +204,13 @@ STATIC mp_obj_t gen_resume_and_raise(mp_obj_t self_in, mp_obj_t send_value, mp_o
}
STATIC mp_obj_t gen_instance_iternext(mp_obj_t self_in) {
-#if MICROPY_PY_ASYNC_AWAIT
+ #if MICROPY_PY_ASYNC_AWAIT
// This translate is literally too much for m0 boards
mp_obj_gen_instance_t *self = MP_OBJ_TO_PTR(self_in);
if (self->coroutine_generator) {
mp_raise_TypeError(translate("'coroutine' object is not an iterator"));
}
-#endif
+ #endif
return gen_resume_and_raise(self_in, mp_const_none, MP_OBJ_NULL);
}
@@ -228,7 +228,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(gen_instance_send_obj, gen_instance_send);
#if MICROPY_PY_ASYNC_AWAIT
STATIC mp_obj_t gen_instance_await(mp_obj_t self_in) {
mp_obj_gen_instance_t *self = MP_OBJ_TO_PTR(self_in);
- if ( !self->coroutine_generator ) {
+ if (!self->coroutine_generator) {
// Pretend like a generator does not have this coroutine behavior.
// Pay no attention to the dir() behind the curtain
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
@@ -309,5 +309,5 @@ const mp_obj_type_t mp_type_gen_instance = {
.unary_op = mp_generic_unary_op,
.getiter = mp_identity_getiter,
.iternext = gen_instance_iternext,
- .locals_dict = (mp_obj_dict_t*)&gen_instance_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&gen_instance_locals_dict,
};
diff --git a/py/objgetitemiter.c b/py/objgetitemiter.c
index 44e8fe889..26ff9ad1d 100644
--- a/py/objgetitemiter.c
+++ b/py/objgetitemiter.c
@@ -46,7 +46,7 @@ STATIC mp_obj_t it_iternext(mp_obj_t self_in) {
return value;
} else {
// an exception was raised
- mp_obj_type_t *t = (mp_obj_type_t*)((mp_obj_base_t*)nlr.ret_val)->type;
+ mp_obj_type_t *t = (mp_obj_type_t *)((mp_obj_base_t *)nlr.ret_val)->type;
if (t == &mp_type_StopIteration || t == &mp_type_IndexError) {
// return MP_OBJ_STOP_ITERATION instead of raising
return MP_OBJ_STOP_ITERATION;
@@ -67,7 +67,7 @@ STATIC const mp_obj_type_t it_type = {
// args are those returned from mp_load_method_maybe (ie either an attribute or a method)
mp_obj_t mp_obj_new_getitem_iter(mp_obj_t *args, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_getitem_iter_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_getitem_iter_t *o = (mp_obj_getitem_iter_t*)iter_buf;
+ mp_obj_getitem_iter_t *o = (mp_obj_getitem_iter_t *)iter_buf;
o->base.type = &it_type;
o->args[0] = args[0];
o->args[1] = args[1];
diff --git a/py/objint.c b/py/objint.c
index 5a33ccbc0..50062351e 100644
--- a/py/objint.c
+++ b/py/objint.c
@@ -59,10 +59,10 @@ STATIC mp_obj_t mp_obj_int_make_new(const mp_obj_type_t *type_in, size_t n_args,
size_t l;
const char *s = mp_obj_str_get_data(args[0], &l);
return mp_parse_num_integer(s, l, 0, NULL);
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (mp_obj_is_float(args[0])) {
return mp_obj_new_int_from_float(mp_obj_float_get(args[0]));
-#endif
+ #endif
} else {
// try to convert to small int (eg from bool)
return MP_OBJ_NEW_SMALL_INT(mp_obj_get_int(args[0]));
@@ -90,26 +90,26 @@ typedef enum {
STATIC mp_fp_as_int_class_t mp_classify_fp_as_int(mp_float_t val) {
union {
mp_float_t f;
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
uint32_t i;
-#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ #elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
uint32_t i[2];
-#endif
+ #endif
} u = {val};
uint32_t e;
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
e = u.i;
-#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ #elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
e = u.i[MP_ENDIANNESS_LITTLE];
-#endif
+ #endif
#define MP_FLOAT_SIGN_SHIFT_I32 ((MP_FLOAT_FRAC_BITS + MP_FLOAT_EXP_BITS) % 32)
#define MP_FLOAT_EXP_SHIFT_I32 (MP_FLOAT_FRAC_BITS % 32)
if (e & (1U << MP_FLOAT_SIGN_SHIFT_I32)) {
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
e |= u.i[MP_ENDIANNESS_BIG] != 0;
-#endif
+ #endif
if ((e & ~(1 << MP_FLOAT_SIGN_SHIFT_I32)) == 0) {
// handle case of -0 (when sign is set but rest of bits are zero)
e = 0;
@@ -124,16 +124,16 @@ STATIC mp_fp_as_int_class_t mp_classify_fp_as_int(mp_float_t val) {
if (e <= ((8 * sizeof(uintptr_t) + MP_FLOAT_EXP_BIAS - 3) << MP_FLOAT_EXP_SHIFT_I32)) {
return MP_FP_CLASS_FIT_SMALLINT;
}
-#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
+ #if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
if (e <= (((sizeof(long long) * BITS_PER_BYTE) + MP_FLOAT_EXP_BIAS - 2) << MP_FLOAT_EXP_SHIFT_I32)) {
return MP_FP_CLASS_FIT_LONGINT;
}
-#endif
-#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ
+ #endif
+ #if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ
return MP_FP_CLASS_FIT_LONGINT;
-#else
+ #else
return MP_FP_CLASS_OVERFLOW;
-#endif
+ #endif
}
#undef MP_FLOAT_SIGN_SHIFT_I32
#undef MP_FLOAT_EXP_SHIFT_I32
@@ -222,7 +222,7 @@ size_t mp_int_format_size(size_t num_bits, int base, const char *prefix, char co
// The resulting formatted string will be returned from this function and the
// formatted size will be in *fmt_size.
char *mp_obj_int_formatted(char **buf, size_t *buf_size, size_t *fmt_size, mp_const_obj_t self_in,
- int base, const char *prefix, char base_char, char comma) {
+ int base, const char *prefix, char base_char, char comma) {
fmt_int_t num;
#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_NONE
// Only have small ints; get the integer value to format.
@@ -302,13 +302,12 @@ char *mp_obj_int_formatted(char **buf, size_t *buf_size, size_t *fmt_size, mp_co
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
-void mp_obj_int_buffer_overflow_check(mp_obj_t self_in, size_t nbytes, bool is_signed)
-{
+void mp_obj_int_buffer_overflow_check(mp_obj_t self_in, size_t nbytes, bool is_signed) {
if (is_signed) {
// self must be < 2**(bits - 1)
mp_obj_t edge = mp_binary_op(MP_BINARY_OP_INPLACE_LSHIFT,
- mp_obj_new_int(1),
- mp_obj_new_int(nbytes * 8 - 1));
+ mp_obj_new_int(1),
+ mp_obj_new_int(nbytes * 8 - 1));
if (mp_binary_op(MP_BINARY_OP_LESS, self_in, edge) == mp_const_true) {
// and >= -2**(bits - 1)
@@ -322,8 +321,8 @@ void mp_obj_int_buffer_overflow_check(mp_obj_t self_in, size_t nbytes, bool is_s
if (mp_obj_int_sign(self_in) >= 0) {
// and < 2**(bits)
mp_obj_t edge = mp_binary_op(MP_BINARY_OP_INPLACE_LSHIFT,
- mp_obj_new_int(1),
- mp_obj_new_int(nbytes * 8));
+ mp_obj_new_int(1),
+ mp_obj_new_int(nbytes * 8));
if (mp_binary_op(MP_BINARY_OP_LESS, self_in, edge) == mp_const_true) {
return;
@@ -462,8 +461,7 @@ STATIC mp_obj_t int_bit_length(mp_obj_t self_in) {
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
if (!MP_OBJ_IS_SMALL_INT(self_in)) {
return mp_obj_int_bit_length_impl(self_in);
- }
- else
+ } else
#endif
{
mp_int_t int_val = MP_OBJ_SMALL_INT_VALUE(self_in);
@@ -471,7 +469,7 @@ STATIC mp_obj_t int_bit_length(mp_obj_t self_in) {
(int_val == 0) ? 0 :
(int_val == MP_SMALL_INT_MIN) ? 8 * sizeof(mp_int_t) :
(int_val < 0) ? 8 * sizeof(long) - __builtin_clzl(-int_val) :
- 8 * sizeof(long) - __builtin_clzl(int_val);
+ 8 * sizeof(long) - __builtin_clzl(int_val);
return mp_obj_new_int_from_uint(value);
}
@@ -488,7 +486,7 @@ STATIC mp_obj_t int_from_bytes(size_t n_args, const mp_obj_t *args) {
mp_buffer_info_t bufinfo;
mp_get_buffer_raise(args[1], &bufinfo, MP_BUFFER_READ);
- const byte* buf = (const byte*)bufinfo.buf;
+ const byte *buf = (const byte *)bufinfo.buf;
int delta = 1;
if (args[2] == MP_OBJ_NEW_QSTR(MP_QSTR_little)) {
buf += bufinfo.len - 1;
@@ -533,7 +531,7 @@ STATIC mp_obj_t int_to_bytes(size_t n_args, const mp_obj_t *pos_args, mp_map_t *
vstr_t vstr;
vstr_init_len(&vstr, len);
- byte *data = (byte*)vstr.buf;
+ byte *data = (byte *)vstr.buf;
memset(data, 0, len);
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
@@ -559,9 +557,9 @@ STATIC mp_obj_t int_to_bytes(size_t n_args, const mp_obj_t *pos_args, mp_map_t *
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(int_to_bytes_obj, 3, int_to_bytes);
STATIC const mp_rom_map_elem_t int_locals_dict_table[] = {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
{ MP_ROM_QSTR(MP_QSTR_bit_length), MP_ROM_PTR(&int_bit_length_obj) },
-#endif
+ #endif
{ MP_ROM_QSTR(MP_QSTR_from_bytes), MP_ROM_PTR(&int_from_bytes_obj) },
{ MP_ROM_QSTR(MP_QSTR_to_bytes), MP_ROM_PTR(&int_to_bytes_obj) },
};
@@ -575,5 +573,5 @@ const mp_obj_type_t mp_type_int = {
.make_new = mp_obj_int_make_new,
.unary_op = mp_obj_int_unary_op,
.binary_op = mp_obj_int_binary_op,
- .locals_dict = (mp_obj_dict_t*)&int_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&int_locals_dict,
};
diff --git a/py/objint.h b/py/objint.h
index 68997ced2..9595c1b3a 100644
--- a/py/objint.h
+++ b/py/objint.h
@@ -31,11 +31,11 @@
typedef struct _mp_obj_int_t {
mp_obj_base_t base;
-#if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
+ #if MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_LONGLONG
mp_longint_impl_t val;
-#elif MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ
+ #elif MICROPY_LONGINT_IMPL == MICROPY_LONGINT_IMPL_MPZ
mpz_t mpz;
-#endif
+ #endif
} mp_obj_int_t;
extern const mp_obj_int_t mp_maxsize_obj;
@@ -50,9 +50,9 @@ mp_obj_int_t *mp_obj_int_new_mpz(void);
void mp_obj_int_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind);
char *mp_obj_int_formatted(char **buf, size_t *buf_size, size_t *fmt_size, mp_const_obj_t self_in,
- int base, const char *prefix, char base_char, char comma);
+ int base, const char *prefix, char base_char, char comma);
char *mp_obj_int_formatted_impl(char **buf, size_t *buf_size, size_t *fmt_size, mp_const_obj_t self_in,
- int base, const char *prefix, char base_char, char comma);
+ int base, const char *prefix, char base_char, char comma);
#if MICROPY_LONGINT_IMPL != MICROPY_LONGINT_IMPL_NONE
void mp_obj_int_buffer_overflow_check(mp_obj_t self_in, size_t nbytes, bool is_signed);
#endif
diff --git a/py/objint_longlong.c b/py/objint_longlong.c
index 0a65098c7..63e3464a1 100644
--- a/py/objint_longlong.c
+++ b/py/objint_longlong.c
@@ -53,7 +53,7 @@ mp_obj_t mp_obj_int_bit_length_impl(mp_obj_t self_in) {
(val == 0) ? 0 :
(val == MP_SMALL_INT_MIN) ? 8 * sizeof(long long) :
(val < 0) ? 8 * sizeof(long long) - __builtin_clzll(-val) :
- 8 * sizeof(long long) - __builtin_clzll(val));
+ 8 * sizeof(long long) - __builtin_clzll(val));
}
mp_obj_t mp_obj_int_from_bytes_impl(bool big_endian, size_t len, const byte *buf) {
@@ -108,15 +108,20 @@ int mp_obj_int_sign(mp_obj_t self_in) {
mp_obj_t mp_obj_int_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mp_obj_int_t *o = o_in;
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(o->val != 0);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(o->val != 0);
// truncate value to fit in mp_int_t, which gives the same hash as
// small int if the value fits without truncation
- case MP_UNARY_OP_HASH: return MP_OBJ_NEW_SMALL_INT((mp_int_t)o->val);
-
- case MP_UNARY_OP_POSITIVE: return o_in;
- case MP_UNARY_OP_NEGATIVE: return mp_obj_new_int_from_ll(-o->val);
- case MP_UNARY_OP_INVERT: return mp_obj_new_int_from_ll(~o->val);
+ case MP_UNARY_OP_HASH:
+ return MP_OBJ_NEW_SMALL_INT((mp_int_t)o->val);
+
+ case MP_UNARY_OP_POSITIVE:
+ return o_in;
+ case MP_UNARY_OP_NEGATIVE:
+ return mp_obj_new_int_from_ll(-o->val);
+ case MP_UNARY_OP_INVERT:
+ return mp_obj_new_int_from_ll(~o->val);
case MP_UNARY_OP_ABS: {
mp_obj_int_t *self = MP_OBJ_TO_PTR(o_in);
if (self->val >= 0) {
@@ -127,7 +132,8 @@ mp_obj_t mp_obj_int_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
self->val = -self->val;
return MP_OBJ_FROM_PTR(self);
}
- default: return MP_OBJ_NULL; // op not supported
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -139,13 +145,13 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
lhs_val = MP_OBJ_SMALL_INT_VALUE(lhs_in);
} else {
assert(MP_OBJ_IS_TYPE(lhs_in, &mp_type_int));
- lhs_val = ((mp_obj_int_t*)lhs_in)->val;
+ lhs_val = ((mp_obj_int_t *)lhs_in)->val;
}
if (MP_OBJ_IS_SMALL_INT(rhs_in)) {
rhs_val = MP_OBJ_SMALL_INT_VALUE(rhs_in);
} else if (MP_OBJ_IS_TYPE(rhs_in, &mp_type_int)) {
- rhs_val = ((mp_obj_int_t*)rhs_in)->val;
+ rhs_val = ((mp_obj_int_t *)rhs_in)->val;
} else {
// delegate to generic function to check for extra cases
return mp_obj_int_binary_op_extra_cases(op, lhs_in, rhs_in);
diff --git a/py/objint_mpz.c b/py/objint_mpz.c
index d32fdfbe8..3d8de4798 100644
--- a/py/objint_mpz.c
+++ b/py/objint_mpz.c
@@ -48,27 +48,27 @@ STATIC const mpz_dig_t maxsize_dig[] = {
#define NUM_DIG 1
(MP_SSIZE_MAX >> MPZ_DIG_SIZE * 0) & DIG_MASK,
#if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 0) > DIG_MASK
- #undef NUM_DIG
+#undef NUM_DIG
#define NUM_DIG 2
- (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 1) & DIG_MASK,
- #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 1) > DIG_MASK
- #undef NUM_DIG
+ (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 1) & DIG_MASK,
+ #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 1) > DIG_MASK
+#undef NUM_DIG
#define NUM_DIG 3
- (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 2) & DIG_MASK,
- #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 2) > DIG_MASK
- #undef NUM_DIG
+ (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 2) & DIG_MASK,
+ #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 2) > DIG_MASK
+#undef NUM_DIG
#define NUM_DIG 4
- (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 3) & DIG_MASK,
- #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 3) > DIG_MASK
- #error cannot encode MP_SSIZE_MAX as mpz
- #endif
- #endif
- #endif
+ (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 3) & DIG_MASK,
+ #if (MP_SSIZE_MAX >> MPZ_DIG_SIZE * 3) > DIG_MASK
+ #error cannot encode MP_SSIZE_MAX as mpz
+ #endif
+ #endif
+ #endif
#endif
};
const mp_obj_int_t mp_maxsize_obj = {
{&mp_type_int},
- {.fixed_dig = 1, .len = NUM_DIG, .alloc = NUM_DIG, .dig = (mpz_dig_t*)maxsize_dig}
+ {.fixed_dig = 1, .len = NUM_DIG, .alloc = NUM_DIG, .dig = (mpz_dig_t *)maxsize_dig}
};
#undef DIG_MASK
#undef NUM_DIG
@@ -91,7 +91,7 @@ mp_obj_int_t *mp_obj_int_new_mpz(void) {
//
// This particular routine should only be called for the mpz representation of the int.
char *mp_obj_int_formatted_impl(char **buf, size_t *buf_size, size_t *fmt_size, mp_const_obj_t self_in,
- int base, const char *prefix, char base_char, char comma) {
+ int base, const char *prefix, char base_char, char comma) {
assert(MP_OBJ_IS_TYPE(self_in, &mp_type_int));
const mp_obj_int_t *self = MP_OBJ_TO_PTR(self_in);
@@ -150,11 +150,20 @@ int mp_obj_int_sign(mp_obj_t self_in) {
mp_obj_t mp_obj_int_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mp_obj_int_t *o = MP_OBJ_TO_PTR(o_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(!mpz_is_zero(&o->mpz));
- case MP_UNARY_OP_HASH: return MP_OBJ_NEW_SMALL_INT(mpz_hash(&o->mpz));
- case MP_UNARY_OP_POSITIVE: return o_in;
- case MP_UNARY_OP_NEGATIVE: { mp_obj_int_t *o2 = mp_obj_int_new_mpz(); mpz_neg_inpl(&o2->mpz, &o->mpz); return MP_OBJ_FROM_PTR(o2); }
- case MP_UNARY_OP_INVERT: { mp_obj_int_t *o2 = mp_obj_int_new_mpz(); mpz_not_inpl(&o2->mpz, &o->mpz); return MP_OBJ_FROM_PTR(o2); }
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(!mpz_is_zero(&o->mpz));
+ case MP_UNARY_OP_HASH:
+ return MP_OBJ_NEW_SMALL_INT(mpz_hash(&o->mpz));
+ case MP_UNARY_OP_POSITIVE:
+ return o_in;
+ case MP_UNARY_OP_NEGATIVE: { mp_obj_int_t *o2 = mp_obj_int_new_mpz();
+ mpz_neg_inpl(&o2->mpz, &o->mpz);
+ return MP_OBJ_FROM_PTR(o2);
+ }
+ case MP_UNARY_OP_INVERT: { mp_obj_int_t *o2 = mp_obj_int_new_mpz();
+ mpz_not_inpl(&o2->mpz, &o->mpz);
+ return MP_OBJ_FROM_PTR(o2);
+ }
case MP_UNARY_OP_ABS: {
mp_obj_int_t *self = MP_OBJ_TO_PTR(o_in);
if (self->mpz.neg == 0) {
@@ -164,7 +173,8 @@ mp_obj_t mp_obj_int_unary_op(mp_unary_op_t op, mp_obj_t o_in) {
mpz_abs_inpl(&self2->mpz, &self->mpz);
return MP_OBJ_FROM_PTR(self2);
}
- default: return MP_OBJ_NULL; // op not supported
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -180,7 +190,7 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
zlhs = &z_int;
} else {
assert(MP_OBJ_IS_TYPE(lhs_in, &mp_type_int));
- zlhs = &((mp_obj_int_t*)MP_OBJ_TO_PTR(lhs_in))->mpz;
+ zlhs = &((mp_obj_int_t *)MP_OBJ_TO_PTR(lhs_in))->mpz;
}
// if rhs is small int, then lhs was not (otherwise mp_binary_op handles it)
@@ -188,22 +198,22 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
mpz_init_fixed_from_int(&z_int, z_int_dig, MPZ_NUM_DIG_FOR_INT, MP_OBJ_SMALL_INT_VALUE(rhs_in));
zrhs = &z_int;
} else if (MP_OBJ_IS_TYPE(rhs_in, &mp_type_int)) {
- zrhs = &((mp_obj_int_t*)MP_OBJ_TO_PTR(rhs_in))->mpz;
-#if MICROPY_PY_BUILTINS_FLOAT
+ zrhs = &((mp_obj_int_t *)MP_OBJ_TO_PTR(rhs_in))->mpz;
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (mp_obj_is_float(rhs_in)) {
return mp_obj_float_binary_op(op, mpz_as_float(zlhs), rhs_in);
-#if MICROPY_PY_BUILTINS_COMPLEX
+ #if MICROPY_PY_BUILTINS_COMPLEX
} else if (MP_OBJ_IS_TYPE(rhs_in, &mp_type_complex)) {
return mp_obj_complex_binary_op(op, mpz_as_float(zlhs), 0, rhs_in);
-#endif
-#endif
+ #endif
+ #endif
} else {
// delegate to generic function to check for extra cases
return mp_obj_int_binary_op_extra_cases(op, lhs_in, rhs_in);
}
if (0) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (op == MP_BINARY_OP_TRUE_DIVIDE || op == MP_BINARY_OP_INPLACE_TRUE_DIVIDE) {
if (mpz_is_zero(zrhs)) {
goto zero_division_error;
@@ -211,7 +221,7 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
mp_float_t flhs = mpz_as_float(zlhs);
mp_float_t frhs = mpz_as_float(zrhs);
return mp_obj_new_float(flhs / frhs);
-#endif
+ #endif
} else if (op >= MP_BINARY_OP_INPLACE_OR && op < MP_BINARY_OP_CONTAINS) {
mp_obj_int_t *res = mp_obj_int_new_mpz();
@@ -232,10 +242,11 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
case MP_BINARY_OP_FLOOR_DIVIDE:
case MP_BINARY_OP_INPLACE_FLOOR_DIVIDE: {
if (mpz_is_zero(zrhs)) {
- zero_division_error:
+ zero_division_error:
mp_raise_msg(&mp_type_ZeroDivisionError, translate("division by zero"));
}
- mpz_t rem; mpz_init_zero(&rem);
+ mpz_t rem;
+ mpz_init_zero(&rem);
mpz_divmod_inpl(&res->mpz, &rem, zlhs, zrhs);
mpz_deinit(&rem);
break;
@@ -245,7 +256,8 @@ mp_obj_t mp_obj_int_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
if (mpz_is_zero(zrhs)) {
goto zero_division_error;
}
- mpz_t quo; mpz_init_zero(&quo);
+ mpz_t quo;
+ mpz_init_zero(&quo);
mpz_divmod_inpl(&quo, &res->mpz, zlhs, zrhs);
mpz_deinit(&quo);
break;
@@ -342,7 +354,7 @@ mp_obj_t mp_obj_int_pow3(mp_obj_t base, mp_obj_t exponent, mp_obj_t modulus) {
mp_raise_TypeError(translate("pow() with 3 arguments requires integers"));
} else {
mp_obj_t result = mp_obj_new_int_from_ull(0); // Use the _from_ull version as this forces an mpz int
- mp_obj_int_t *res_p = (mp_obj_int_t *) MP_OBJ_TO_PTR(result);
+ mp_obj_int_t *res_p = (mp_obj_int_t *)MP_OBJ_TO_PTR(result);
mpz_t l_temp, r_temp, m_temp;
mpz_t *lhs = mp_mpz_for_int(base, &l_temp);
@@ -355,9 +367,15 @@ mp_obj_t mp_obj_int_pow3(mp_obj_t base, mp_obj_t exponent, mp_obj_t modulus) {
mpz_pow3_inpl(&(res_p->mpz), lhs, rhs, mod);
- if (lhs == &l_temp) { mpz_deinit(lhs); }
- if (rhs == &r_temp) { mpz_deinit(rhs); }
- if (mod == &m_temp) { mpz_deinit(mod); }
+ if (lhs == &l_temp) {
+ mpz_deinit(lhs);
+ }
+ if (rhs == &r_temp) {
+ mpz_deinit(rhs);
+ }
+ if (mod == &m_temp) {
+ mpz_deinit(mod);
+ }
return result;
}
}
diff --git a/py/objlist.c b/py/objlist.c
index 7aa4ee89c..d8b0870e5 100644
--- a/py/objlist.c
+++ b/py/objlist.c
@@ -95,15 +95,18 @@ STATIC mp_obj_t list_make_new(const mp_obj_type_t *type_in, size_t n_args, const
STATIC mp_obj_t list_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
mp_obj_list_t *self = mp_instance_cast_to_native_base(self_in, &mp_type_list);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(self->len != 0);
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(self->len);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(self->len != 0);
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(self->len);
#if MICROPY_PY_SYS_GETSIZEOF
case MP_UNARY_OP_SIZEOF: {
size_t sz = sizeof(*self) + sizeof(mp_obj_t) * self->alloc;
return MP_OBJ_NEW_SMALL_INT(sz);
}
#endif
- default: return MP_OBJ_NULL; // op not supported
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -162,7 +165,7 @@ STATIC mp_obj_t list_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
mp_obj_list_t *self = mp_instance_cast_to_native_base(self_in, &mp_type_list);
if (value == MP_OBJ_NULL) {
// delete
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_bound_slice_t slice;
if (!mp_seq_get_fast_slice_indexes(self->len, index, &slice)) {
@@ -170,21 +173,21 @@ STATIC mp_obj_t list_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
}
mp_int_t len_adj = slice.start - slice.stop;
- //printf("Len adj: %d\n", len_adj);
+ // printf("Len adj: %d\n", len_adj);
assert(len_adj <= 0);
- mp_seq_replace_slice_no_grow(self->items, self->len, slice.start, slice.stop, self->items/*NULL*/, 0, sizeof(*self->items));
+ mp_seq_replace_slice_no_grow(self->items, self->len, slice.start, slice.stop, self->items /*NULL*/, 0, sizeof(*self->items));
// Clear "freed" elements at the end of list
mp_seq_clear(self->items, self->len + len_adj, self->len, sizeof(*self->items));
self->len += len_adj;
return mp_const_none;
}
-#endif
+ #endif
mp_obj_t args[2] = {self, index};
list_pop(2, args);
return mp_const_none;
} else if (value == MP_OBJ_SENTINEL) {
// load
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_bound_slice_t slice;
if (!mp_seq_get_fast_slice_indexes(self->len, index, &slice)) {
@@ -194,20 +197,21 @@ STATIC mp_obj_t list_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
mp_seq_copy(res->items, self->items + slice.start, res->len, mp_obj_t);
return MP_OBJ_FROM_PTR(res);
}
-#endif
+ #endif
size_t index_val = mp_get_index(self->base.type, self->len, index, false);
return self->items[index_val];
} else {
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
- size_t value_len; mp_obj_t *value_items;
+ size_t value_len;
+ mp_obj_t *value_items;
mp_obj_get_array(value, &value_len, &value_items);
mp_bound_slice_t slice_out;
if (!mp_seq_get_fast_slice_indexes(self->len, index, &slice_out)) {
mp_raise_NotImplementedError(NULL);
}
mp_int_t len_adj = value_len - (slice_out.stop - slice_out.start);
- //printf("Len adj: %d\n", len_adj);
+ // printf("Len adj: %d\n", len_adj);
if (len_adj > 0) {
if (self->len + len_adj > self->alloc) {
// TODO: Might optimize memory copies here by checking if block can
@@ -227,7 +231,7 @@ STATIC mp_obj_t list_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
self->len += len_adj;
return mp_const_none;
}
-#endif
+ #endif
mp_obj_list_store(self, index, value);
return mp_const_none;
}
@@ -280,7 +284,7 @@ inline mp_obj_t mp_obj_list_pop(mp_obj_list_t *self, size_t index) {
// Clear stale pointer from slot which just got freed to prevent GC issues
self->items[self->len] = MP_OBJ_NULL;
if (self->alloc > LIST_MIN_ALLOC && self->alloc > 2 * self->len) {
- self->items = m_renew(mp_obj_t, self->items, self->alloc, self->alloc/2);
+ self->items = m_renew(mp_obj_t, self->items, self->alloc, self->alloc / 2);
self->alloc /= 2;
}
return ret;
@@ -300,9 +304,13 @@ STATIC void mp_quicksort(mp_obj_t *head, mp_obj_t *tail, mp_obj_t key_fn, mp_obj
mp_obj_t *t = tail;
mp_obj_t v = key_fn == MP_OBJ_NULL ? tail[0] : mp_call_function_1(key_fn, tail[0]); // get pivot using key_fn
for (;;) {
- do ++h; while (h < t && mp_binary_op(MP_BINARY_OP_LESS, key_fn == MP_OBJ_NULL ? h[0] : mp_call_function_1(key_fn, h[0]), v) == binop_less_result);
- do --t; while (h < t && mp_binary_op(MP_BINARY_OP_LESS, v, key_fn == MP_OBJ_NULL ? t[0] : mp_call_function_1(key_fn, t[0])) == binop_less_result);
- if (h >= t) break;
+ do {++h;
+ } while (h < t && mp_binary_op(MP_BINARY_OP_LESS, key_fn == MP_OBJ_NULL ? h[0] : mp_call_function_1(key_fn, h[0]), v) == binop_less_result);
+ do {--t;
+ } while (h < t && mp_binary_op(MP_BINARY_OP_LESS, v, key_fn == MP_OBJ_NULL ? t[0] : mp_call_function_1(key_fn, t[0])) == binop_less_result);
+ if (h >= t) {
+ break;
+ }
mp_obj_t x = h[0];
h[0] = t[0];
t[0] = x;
@@ -333,15 +341,15 @@ mp_obj_t mp_obj_list_sort(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_
mp_arg_val_t key, reverse;
} args;
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args,
- MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t*)&args);
+ MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t *)&args);
mp_check_self(MP_OBJ_IS_TYPE(pos_args[0], &mp_type_list));
mp_obj_list_t *self = mp_instance_cast_to_native_base(pos_args[0], &mp_type_list);
if (self->len > 1) {
mp_quicksort(self->items, self->items + self->len - 1,
- args.key.u_obj == mp_const_none ? MP_OBJ_NULL : args.key.u_obj,
- args.reverse.u_bool ? mp_const_false : mp_const_true);
+ args.key.u_obj == mp_const_none ? MP_OBJ_NULL : args.key.u_obj,
+ args.reverse.u_bool ? mp_const_false : mp_const_true);
}
return mp_const_none;
@@ -379,7 +387,7 @@ inline void mp_obj_list_insert(mp_obj_list_t *self, size_t index, mp_obj_t obj)
mp_obj_list_append(MP_OBJ_FROM_PTR(self), mp_const_none);
for (size_t i = self->len - 1; i > index; --i) {
- self->items[i] = self->items[i - 1];
+ self->items[i] = self->items[i - 1];
}
self->items[index] = obj;
}
@@ -390,13 +398,13 @@ STATIC mp_obj_t list_insert(mp_obj_t self_in, mp_obj_t idx, mp_obj_t obj) {
// insert has its own strange index logic
mp_int_t index = MP_OBJ_SMALL_INT_VALUE(idx);
if (index < 0) {
- index += self->len;
+ index += self->len;
}
if (index < 0) {
- index = 0;
+ index = 0;
}
if ((size_t)index > self->len) {
- index = self->len;
+ index = self->len;
}
mp_obj_list_insert(self, index, obj);
return mp_const_none;
@@ -416,10 +424,10 @@ STATIC mp_obj_t list_reverse(mp_obj_t self_in) {
mp_obj_list_t *self = mp_instance_cast_to_native_base(self_in, &mp_type_list);
mp_int_t len = self->len;
- for (mp_int_t i = 0; i < len/2; i++) {
- mp_obj_t a = self->items[i];
- self->items[i] = self->items[len-i-1];
- self->items[len-i-1] = a;
+ for (mp_int_t i = 0; i < len / 2; i++) {
+ mp_obj_t a = self->items[i];
+ self->items[i] = self->items[len - i - 1];
+ self->items[len - i - 1] = a;
}
return mp_const_none;
@@ -462,7 +470,7 @@ const mp_obj_type_t mp_type_list = {
.binary_op = list_binary_op,
.subscr = list_subscr,
.getiter = list_getiter,
- .locals_dict = (mp_obj_dict_t*)&list_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&list_locals_dict,
};
void mp_obj_list_init(mp_obj_list_t *o, size_t n) {
@@ -532,7 +540,7 @@ STATIC mp_obj_t list_it_iternext(mp_obj_t self_in) {
mp_obj_t mp_obj_new_list_iterator(mp_obj_t list, size_t cur, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_list_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_list_it_t *o = (mp_obj_list_it_t*)iter_buf;
+ mp_obj_list_it_t *o = (mp_obj_list_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = list_it_iternext;
o->list = list;
diff --git a/py/objmodule.c b/py/objmodule.c
index 90796c535..0ac40229d 100644
--- a/py/objmodule.c
+++ b/py/objmodule.c
@@ -44,7 +44,7 @@ STATIC void module_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kin
module_name = mp_obj_str_get_str(elem->value);
}
-#if MICROPY_PY___FILE__
+ #if MICROPY_PY___FILE__
// If we store __file__ to imported modules then try to lookup this
// symbol to give more information about the module.
elem = mp_map_lookup(&self->globals->map, MP_OBJ_NEW_QSTR(MP_QSTR___file__), MP_MAP_LOOKUP);
@@ -52,7 +52,7 @@ STATIC void module_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kin
mp_printf(print, "<module '%s' from '%s'>", module_name, mp_obj_str_get_str(elem->value));
return;
}
-#endif
+ #endif
mp_printf(print, "<module '%s'>", module_name);
}
@@ -153,123 +153,123 @@ STATIC const mp_rom_map_elem_t mp_builtin_module_table[] = {
{ MP_ROM_QSTR(MP_QSTR_builtins), MP_ROM_PTR(&mp_module_builtins) },
{ MP_ROM_QSTR(MP_QSTR_micropython), MP_ROM_PTR(&mp_module_micropython) },
-#if MICROPY_PY_ARRAY
+ #if MICROPY_PY_ARRAY
{ MP_ROM_QSTR(MP_QSTR_array), MP_ROM_PTR(&mp_module_array) },
-#endif
-#if MICROPY_PY_IO
-#if CIRCUITPY
+ #endif
+ #if MICROPY_PY_IO
+ #if CIRCUITPY
{ MP_ROM_QSTR(MP_QSTR_io), MP_ROM_PTR(&mp_module_io) },
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_uio), MP_ROM_PTR(&mp_module_io) },
-#endif
-#endif
-#if MICROPY_PY_COLLECTIONS
+ #endif
+ #endif
+ #if MICROPY_PY_COLLECTIONS
{ MP_ROM_QSTR(MP_QSTR_collections), MP_ROM_PTR(&mp_module_collections) },
-#endif
+ #endif
// CircuitPython: Now in shared-bindings/, so not defined here.
-#if MICROPY_PY_STRUCT
+ #if MICROPY_PY_STRUCT
{ MP_ROM_QSTR(MP_QSTR_ustruct), MP_ROM_PTR(&mp_module_ustruct) },
-#endif
+ #endif
-#if MICROPY_PY_BUILTINS_FLOAT
-#if MICROPY_PY_MATH
+ #if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_MATH
{ MP_ROM_QSTR(MP_QSTR_math), MP_ROM_PTR(&mp_module_math) },
-#endif
-#if MICROPY_PY_BUILTINS_COMPLEX && MICROPY_PY_CMATH
+ #endif
+ #if MICROPY_PY_BUILTINS_COMPLEX && MICROPY_PY_CMATH
{ MP_ROM_QSTR(MP_QSTR_cmath), MP_ROM_PTR(&mp_module_cmath) },
-#endif
-#endif
-#if MICROPY_PY_SYS
+ #endif
+ #endif
+ #if MICROPY_PY_SYS
{ MP_ROM_QSTR(MP_QSTR_sys), MP_ROM_PTR(&mp_module_sys) },
-#endif
-#if MICROPY_PY_GC && MICROPY_ENABLE_GC
+ #endif
+ #if MICROPY_PY_GC && MICROPY_ENABLE_GC
{ MP_ROM_QSTR(MP_QSTR_gc), MP_ROM_PTR(&mp_module_gc) },
-#endif
-#if MICROPY_PY_THREAD
+ #endif
+ #if MICROPY_PY_THREAD
{ MP_ROM_QSTR(MP_QSTR__thread), MP_ROM_PTR(&mp_module_thread) },
-#endif
+ #endif
// extmod modules
-#if MICROPY_PY_UERRNO
-#if CIRCUITPY
+ #if MICROPY_PY_UERRNO
+ #if CIRCUITPY
// CircuitPython: Defined in MICROPY_PORT_BUILTIN_MODULES, so not defined here.
// TODO: move to shared-bindings/
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_uerrno), MP_ROM_PTR(&mp_module_uerrno) },
-#endif
-#endif
-#if MICROPY_PY_UCTYPES
+ #endif
+ #endif
+ #if MICROPY_PY_UCTYPES
{ MP_ROM_QSTR(MP_QSTR_uctypes), MP_ROM_PTR(&mp_module_uctypes) },
-#endif
-#if MICROPY_PY_UZLIB
+ #endif
+ #if MICROPY_PY_UZLIB
{ MP_ROM_QSTR(MP_QSTR_uzlib), MP_ROM_PTR(&mp_module_uzlib) },
-#endif
-#if MICROPY_PY_UJSON
-#if CIRCUITPY
+ #endif
+ #if MICROPY_PY_UJSON
+ #if CIRCUITPY
// CircuitPython: Defined in MICROPY_PORT_BUILTIN_MODULES, so not defined here.
// TODO: move to shared-bindings/
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_ujson), MP_ROM_PTR(&mp_module_ujson) },
-#endif
-#endif
-#if CIRCUITPY_ULAB
-#if CIRCUITPY
+ #endif
+ #endif
+ #if CIRCUITPY_ULAB
+ #if CIRCUITPY
// CircuitPython: Defined in MICROPY_PORT_BUILTIN_MODULES, so not defined here.
// TODO: move to shared-bindings/
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_ulab), MP_ROM_PTR(&ulab_user_cmodule) },
-#endif
-#endif
-#if MICROPY_PY_URE
-#if CIRCUITPY
+ #endif
+ #endif
+ #if MICROPY_PY_URE
+ #if CIRCUITPY
// CircuitPython: Defined in MICROPY_PORT_BUILTIN_MODULES, so not defined here.
// TODO: move to shared-bindings/
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_ure), MP_ROM_PTR(&mp_module_ure) },
-#endif
-#endif
-#if MICROPY_PY_UHEAPQ
+ #endif
+ #endif
+ #if MICROPY_PY_UHEAPQ
{ MP_ROM_QSTR(MP_QSTR_uheapq), MP_ROM_PTR(&mp_module_uheapq) },
-#endif
-#if MICROPY_PY_UTIMEQ
+ #endif
+ #if MICROPY_PY_UTIMEQ
{ MP_ROM_QSTR(MP_QSTR_utimeq), MP_ROM_PTR(&mp_module_utimeq) },
-#endif
-#if MICROPY_PY_UHASHLIB
+ #endif
+ #if MICROPY_PY_UHASHLIB
{ MP_ROM_QSTR(MP_QSTR_hashlib), MP_ROM_PTR(&mp_module_uhashlib) },
-#endif
-#if MICROPY_PY_UBINASCII
-#if CIRCUITPY
+ #endif
+ #if MICROPY_PY_UBINASCII
+ #if CIRCUITPY
// CircuitPython: Defined in MICROPY_PORT_BUILTIN_MODULES, so not defined here.
// TODO: move to shared-bindings/
-#else
+ #else
{ MP_ROM_QSTR(MP_QSTR_ubinascii), MP_ROM_PTR(&mp_module_ubinascii) },
-#endif
-#endif
-#if MICROPY_PY_URANDOM
+ #endif
+ #endif
+ #if MICROPY_PY_URANDOM
{ MP_ROM_QSTR(MP_QSTR_urandom), MP_ROM_PTR(&mp_module_urandom) },
-#endif
-#if MICROPY_PY_USELECT
+ #endif
+ #if MICROPY_PY_USELECT
{ MP_ROM_QSTR(MP_QSTR_uselect), MP_ROM_PTR(&mp_module_uselect) },
-#endif
-#if MICROPY_PY_USSL
+ #endif
+ #if MICROPY_PY_USSL
{ MP_ROM_QSTR(MP_QSTR_ussl), MP_ROM_PTR(&mp_module_ussl) },
-#endif
-#if MICROPY_PY_LWIP
+ #endif
+ #if MICROPY_PY_LWIP
{ MP_ROM_QSTR(MP_QSTR_lwip), MP_ROM_PTR(&mp_module_lwip) },
-#endif
-#if MICROPY_PY_WEBSOCKET
+ #endif
+ #if MICROPY_PY_WEBSOCKET
{ MP_ROM_QSTR(MP_QSTR_websocket), MP_ROM_PTR(&mp_module_websocket) },
-#endif
-#if MICROPY_PY_WEBREPL
+ #endif
+ #if MICROPY_PY_WEBREPL
{ MP_ROM_QSTR(MP_QSTR__webrepl), MP_ROM_PTR(&mp_module_webrepl) },
-#endif
-#if MICROPY_PY_FRAMEBUF
+ #endif
+ #if MICROPY_PY_FRAMEBUF
{ MP_ROM_QSTR(MP_QSTR_framebuf), MP_ROM_PTR(&mp_module_framebuf) },
-#endif
-#if MICROPY_PY_BTREE
+ #endif
+ #if MICROPY_PY_BTREE
{ MP_ROM_QSTR(MP_QSTR_btree), MP_ROM_PTR(&mp_module_btree) },
-#endif
+ #endif
// extra builtin modules as defined by a port
MICROPY_PORT_BUILTIN_MODULES
@@ -279,9 +279,9 @@ STATIC const mp_rom_map_elem_t mp_builtin_module_table[] = {
MICROPY_REGISTERED_MODULES
#endif
-#if defined(MICROPY_DEBUG_MODULES) && defined(MICROPY_PORT_BUILTIN_DEBUG_MODULES)
+ #if defined(MICROPY_DEBUG_MODULES) && defined(MICROPY_PORT_BUILTIN_DEBUG_MODULES)
, MICROPY_PORT_BUILTIN_DEBUG_MODULES
-#endif
+ #endif
};
MP_DEFINE_CONST_MAP(mp_builtin_module_map, mp_builtin_module_table);
@@ -302,7 +302,7 @@ mp_obj_t mp_module_get(qstr module_name) {
if (el == NULL) {
// module not found, look for builtin module names
- el = mp_map_lookup((mp_map_t*)&mp_builtin_module_map, MP_OBJ_NEW_QSTR(module_name), MP_MAP_LOOKUP);
+ el = mp_map_lookup((mp_map_t *)&mp_builtin_module_map, MP_OBJ_NEW_QSTR(module_name), MP_MAP_LOOKUP);
if (el == NULL) {
return MP_OBJ_NULL;
}
diff --git a/py/objnamedtuple.c b/py/objnamedtuple.c
index 8b595da57..15b50c2d1 100644
--- a/py/objnamedtuple.c
+++ b/py/objnamedtuple.c
@@ -49,9 +49,9 @@ size_t mp_obj_namedtuple_find_field(const mp_obj_namedtuple_type_t *type, qstr n
#if MICROPY_PY_COLLECTIONS_ORDEREDDICT
STATIC mp_obj_t namedtuple_asdict(mp_obj_t self_in) {
mp_obj_namedtuple_t *self = MP_OBJ_TO_PTR(self_in);
- const qstr *fields = ((mp_obj_namedtuple_type_t*)self->tuple.base.type)->fields;
+ const qstr *fields = ((mp_obj_namedtuple_type_t *)self->tuple.base.type)->fields;
mp_obj_t dict = mp_obj_new_dict(self->tuple.len);
- //make it an OrderedDict
+ // make it an OrderedDict
mp_obj_dict_t *dictObj = MP_OBJ_TO_PTR(dict);
dictObj->base.type = &mp_type_ordereddict;
dictObj->map.is_ordered = 1;
@@ -67,7 +67,7 @@ void namedtuple_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t ki
(void)kind;
mp_obj_namedtuple_t *o = MP_OBJ_TO_PTR(o_in);
mp_printf(print, "%q", o->tuple.base.type->name);
- const qstr *fields = ((mp_obj_namedtuple_type_t*)o->tuple.base.type)->fields;
+ const qstr *fields = ((mp_obj_namedtuple_type_t *)o->tuple.base.type)->fields;
mp_obj_attrtuple_print_helper(print, fields, &o->tuple);
}
@@ -82,7 +82,7 @@ void namedtuple_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
return;
}
#endif
- size_t id = mp_obj_namedtuple_find_field((mp_obj_namedtuple_type_t*)self->tuple.base.type, attr);
+ size_t id = mp_obj_namedtuple_find_field((mp_obj_namedtuple_type_t *)self->tuple.base.type, attr);
if (id == (size_t)-1) {
return;
}
@@ -95,7 +95,7 @@ void namedtuple_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
}
mp_obj_t namedtuple_make_new(const mp_obj_type_t *type_in, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
- const mp_obj_namedtuple_type_t *type = (const mp_obj_namedtuple_type_t*)type_in;
+ const mp_obj_namedtuple_type_t *type = (const mp_obj_namedtuple_type_t *)type_in;
size_t num_fields = type->n_fields;
size_t n_kw = 0;
if (kw_args != NULL) {
@@ -103,15 +103,15 @@ mp_obj_t namedtuple_make_new(const mp_obj_type_t *type_in, size_t n_args, const
}
if (n_args + n_kw != num_fields) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NORMAL
- mp_raise_TypeError_varg(
- translate("function takes %d positional arguments but %d were given"),
- num_fields, n_args + n_kw);
+ mp_raise_TypeError_varg(
+ translate("function takes %d positional arguments but %d were given"),
+ num_fields, n_args + n_kw);
#else
- mp_raise_TypeError_varg(
- translate("%q() takes %d positional arguments but %d were given"),
- type->base.name, num_fields, n_args + n_kw);
+ mp_raise_TypeError_varg(
+ translate("%q() takes %d positional arguments but %d were given"),
+ type->base.name, num_fields, n_args + n_kw);
#endif
}
@@ -129,18 +129,18 @@ mp_obj_t namedtuple_make_new(const mp_obj_type_t *type_in, size_t n_args, const
size_t id = mp_obj_namedtuple_find_field(type, kw);
if (id == (size_t)-1) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError_varg(
- translate("unexpected keyword argument '%q'"), kw);
+ mp_raise_TypeError_varg(
+ translate("unexpected keyword argument '%q'"), kw);
#endif
}
if (tuple->items[id] != MP_OBJ_NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_arg_error_terse_mismatch();
+ mp_arg_error_terse_mismatch();
#else
- mp_raise_TypeError_varg(
- translate("function got multiple values for argument '%q'"), kw);
+ mp_raise_TypeError_varg(
+ translate("function got multiple values for argument '%q'"), kw);
#endif
}
tuple->items[id] = kw_args->table[i].value;
diff --git a/py/objobject.c b/py/objobject.c
index 8983cd9ad..b3a6a171a 100644
--- a/py/objobject.c
+++ b/py/objobject.c
@@ -51,7 +51,7 @@ STATIC mp_obj_t object___init__(mp_obj_t self) {
STATIC MP_DEFINE_CONST_FUN_OBJ_1(object___init___obj, object___init__);
STATIC mp_obj_t object___new__(mp_obj_t cls) {
- if (!MP_OBJ_IS_TYPE(cls, &mp_type_type) || !mp_obj_is_instance_type((mp_obj_type_t*)MP_OBJ_TO_PTR(cls))) {
+ if (!MP_OBJ_IS_TYPE(cls, &mp_type_type) || !mp_obj_is_instance_type((mp_obj_type_t *)MP_OBJ_TO_PTR(cls))) {
mp_raise_TypeError(translate("__new__ arg must be a user-type"));
}
// This executes only "__new__" part of instance creation.
@@ -81,6 +81,6 @@ const mp_obj_type_t mp_type_object = {
.name = MP_QSTR_object,
.make_new = object_make_new,
#if MICROPY_CPYTHON_COMPAT
- .locals_dict = (mp_obj_dict_t*)&object_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&object_locals_dict,
#endif
};
diff --git a/py/objproperty.c b/py/objproperty.c
index e909533c4..f249d79a1 100644
--- a/py/objproperty.c
+++ b/py/objproperty.c
@@ -55,7 +55,7 @@ STATIC mp_obj_t property_make_new(const mp_obj_type_t *type, size_t n_args, cons
STATIC mp_obj_t property_getter(mp_obj_t self_in, mp_obj_t getter) {
mp_obj_property_t *p2 = m_new_obj(mp_obj_property_t);
- *p2 = *(mp_obj_property_t*)MP_OBJ_TO_PTR(self_in);
+ *p2 = *(mp_obj_property_t *)MP_OBJ_TO_PTR(self_in);
p2->proxy[0] = getter;
return MP_OBJ_FROM_PTR(p2);
}
@@ -64,7 +64,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(property_getter_obj, property_getter);
STATIC mp_obj_t property_setter(mp_obj_t self_in, mp_obj_t setter) {
mp_obj_property_t *p2 = m_new_obj(mp_obj_property_t);
- *p2 = *(mp_obj_property_t*)MP_OBJ_TO_PTR(self_in);
+ *p2 = *(mp_obj_property_t *)MP_OBJ_TO_PTR(self_in);
p2->proxy[1] = setter;
return MP_OBJ_FROM_PTR(p2);
}
@@ -73,7 +73,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(property_setter_obj, property_setter);
STATIC mp_obj_t property_deleter(mp_obj_t self_in, mp_obj_t deleter) {
mp_obj_property_t *p2 = m_new_obj(mp_obj_property_t);
- *p2 = *(mp_obj_property_t*)MP_OBJ_TO_PTR(self_in);
+ *p2 = *(mp_obj_property_t *)MP_OBJ_TO_PTR(self_in);
p2->proxy[2] = deleter;
return MP_OBJ_FROM_PTR(p2);
}
@@ -92,7 +92,7 @@ const mp_obj_type_t mp_type_property = {
{ &mp_type_type },
.name = MP_QSTR_property,
.make_new = property_make_new,
- .locals_dict = (mp_obj_dict_t*)&property_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&property_locals_dict,
};
const mp_obj_t *mp_obj_property_get(mp_obj_t self_in) {
diff --git a/py/objrange.c b/py/objrange.c
index 7af9f37a1..fcc0ede98 100644
--- a/py/objrange.c
+++ b/py/objrange.c
@@ -61,7 +61,7 @@ STATIC const mp_obj_type_t range_it_type = {
STATIC mp_obj_t mp_obj_new_range_iterator(mp_int_t cur, mp_int_t stop, mp_int_t step, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_range_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_range_it_t *o = (mp_obj_range_it_t*)iter_buf;
+ mp_obj_range_it_t *o = (mp_obj_range_it_t *)iter_buf;
o->base.type = &range_it_type;
o->cur = cur;
o->stop = stop;
@@ -134,9 +134,12 @@ STATIC mp_obj_t range_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
mp_obj_range_t *self = MP_OBJ_TO_PTR(self_in);
mp_int_t len = range_len(self);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(len > 0);
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(len);
- default: return MP_OBJ_NULL; // op not supported
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(len > 0);
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(len);
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -154,7 +157,7 @@ STATIC mp_obj_t range_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs
&& (lhs_len == 0
|| (lhs->start == rhs->start
&& (lhs_len == 1 || lhs->step == rhs->step)))
- );
+ );
}
#endif
@@ -163,7 +166,7 @@ STATIC mp_obj_t range_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
// load
mp_obj_range_t *self = MP_OBJ_TO_PTR(self_in);
mp_int_t len = range_len(self);
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_bound_slice_t slice;
mp_seq_get_fast_slice_indexes(len, index, &slice);
@@ -178,7 +181,7 @@ STATIC mp_obj_t range_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
}
return MP_OBJ_FROM_PTR(o);
}
-#endif
+ #endif
size_t index_val = mp_get_index(self->base.type, len, index, false);
return MP_OBJ_NEW_SMALL_INT(self->start + index_val * self->step);
} else {
@@ -220,7 +223,7 @@ const mp_obj_type_t mp_type_range = {
#endif
.subscr = range_subscr,
.getiter = range_getiter,
-#if MICROPY_PY_BUILTINS_RANGE_ATTRS
+ #if MICROPY_PY_BUILTINS_RANGE_ATTRS
.attr = range_attr,
-#endif
+ #endif
};
diff --git a/py/objset.c b/py/objset.c
index c5d54aede..6089f9181 100644
--- a/py/objset.c
+++ b/py/objset.c
@@ -51,9 +51,9 @@ STATIC mp_obj_t set_it_iternext(mp_obj_t self_in);
STATIC bool is_set_or_frozenset(mp_obj_t o) {
return MP_OBJ_IS_TYPE(o, &mp_type_set)
-#if MICROPY_PY_BUILTINS_FROZENSET
- || MP_OBJ_IS_TYPE(o, &mp_type_frozenset)
-#endif
+ #if MICROPY_PY_BUILTINS_FROZENSET
+ || MP_OBJ_IS_TYPE(o, &mp_type_frozenset)
+ #endif
;
}
@@ -125,7 +125,7 @@ STATIC mp_obj_t set_make_new(const mp_obj_type_t *type, size_t n_args, const mp_
mp_obj_set_store(set, item);
}
// Set actual set/frozenset type
- ((mp_obj_set_t*)MP_OBJ_TO_PTR(set))->base.type = type;
+ ((mp_obj_set_t *)MP_OBJ_TO_PTR(set))->base.type = type;
return set;
}
}
@@ -148,7 +148,7 @@ STATIC mp_obj_t set_it_iternext(mp_obj_t self_in) {
STATIC mp_obj_t set_getiter(mp_obj_t set_in, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_set_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_set_it_t *o = (mp_obj_set_it_t*)iter_buf;
+ mp_obj_set_it_t *o = (mp_obj_set_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = set_it_iternext;
o->set = (mp_obj_set_t *)MP_OBJ_TO_PTR(set_in);
@@ -212,7 +212,7 @@ STATIC mp_obj_t set_diff_int(size_t n_args, const mp_obj_t *args, bool update) {
if (self == other) {
set_clear(self);
} else {
- mp_set_t *self_set = &((mp_obj_set_t*)MP_OBJ_TO_PTR(self))->set;
+ mp_set_t *self_set = &((mp_obj_set_t *)MP_OBJ_TO_PTR(self))->set;
mp_obj_t iter = mp_getiter(other, NULL);
mp_obj_t next;
while ((next = mp_iternext(iter)) != MP_OBJ_STOP_ITERATION) {
@@ -432,9 +432,11 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(set_union_obj, set_union);
STATIC mp_obj_t set_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
mp_obj_set_t *self = MP_OBJ_TO_PTR(self_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(self->set.used != 0);
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(self->set.used);
-#if MICROPY_PY_BUILTINS_FROZENSET
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(self->set.used != 0);
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(self->set.used);
+ #if MICROPY_PY_BUILTINS_FROZENSET
case MP_UNARY_OP_HASH:
if (MP_OBJ_IS_TYPE(self_in, &mp_type_frozenset)) {
// start hash with unique value
@@ -449,9 +451,10 @@ STATIC mp_obj_t set_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
}
return MP_OBJ_NEW_SMALL_INT(hash);
}
-#endif
- /* FALLTHROUGH */
- default: return MP_OBJ_NULL; // op not supported
+ #endif
+ /* FALLTHROUGH */
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -553,7 +556,7 @@ const mp_obj_type_t mp_type_set = {
.unary_op = set_unary_op,
.binary_op = set_binary_op,
.getiter = set_getiter,
- .locals_dict = (mp_obj_dict_t*)&set_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&set_locals_dict,
};
#if MICROPY_PY_BUILTINS_FROZENSET
@@ -578,7 +581,7 @@ const mp_obj_type_t mp_type_frozenset = {
.unary_op = set_unary_op,
.binary_op = set_binary_op,
.getiter = set_getiter,
- .locals_dict = (mp_obj_dict_t*)&frozenset_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&frozenset_locals_dict,
};
#endif
diff --git a/py/objslice.c b/py/objslice.c
index 40d4d3c76..a2beb7dd2 100644
--- a/py/objslice.c
+++ b/py/objslice.c
@@ -125,22 +125,22 @@ STATIC void slice_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
} else if (attr == MP_QSTR_step) {
dest[0] = self->step;
} else if (attr == MP_QSTR_indices) {
- mp_convert_member_lookup(self_in, self->base.type, (mp_obj_t) &slice_indices_obj, dest);
+ mp_convert_member_lookup(self_in, self->base.type, (mp_obj_t)&slice_indices_obj, dest);
}
}
STATIC mp_obj_t slice_make_new(const mp_obj_type_t *type,
- size_t n_args, const mp_obj_t *args, mp_map_t *kw_args);
+ size_t n_args, const mp_obj_t *args, mp_map_t *kw_args);
#endif
const mp_obj_type_t mp_type_slice = {
{ &mp_type_type },
.name = MP_QSTR_slice,
.print = slice_print,
-#if MICROPY_PY_BUILTINS_SLICE_ATTRS
+ #if MICROPY_PY_BUILTINS_SLICE_ATTRS
.make_new = slice_make_new,
.attr = slice_attr,
-#endif
+ #endif
};
mp_obj_t mp_obj_new_slice(mp_obj_t ostart, mp_obj_t ostop, mp_obj_t ostep) {
@@ -219,7 +219,7 @@ void mp_obj_slice_indices(mp_obj_t self_in, mp_int_t length, mp_bound_slice_t *r
#if MICROPY_PY_BUILTINS_SLICE_ATTRS
STATIC mp_obj_t slice_make_new(const mp_obj_type_t *type,
- size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
+ size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
if (type != &mp_type_slice) {
mp_raise_NotImplementedError(translate("Cannot subclass slice"));
}
diff --git a/py/objstr.c b/py/objstr.c
index 1a59aeaec..e3c0e78e3 100644
--- a/py/objstr.c
+++ b/py/objstr.c
@@ -140,11 +140,11 @@ STATIC void str_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t
}
mp_obj_t mp_obj_str_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
if (kw_args != NULL && kw_args->used != 0) {
mp_arg_error_unimpl_kw();
}
-#endif
+ #endif
mp_arg_check_num(n_args, kw_args, 0, 3, false);
@@ -175,7 +175,7 @@ mp_obj_t mp_obj_str_make_new(const mp_obj_type_t *type, size_t n_args, const mp_
#endif
// Check if a qstr with this data already exists
- qstr q = qstr_find_strn((const char*)str_data, str_len);
+ qstr q = qstr_find_strn((const char *)str_data, str_len);
if (q != MP_QSTR_NULL) {
return MP_OBJ_NEW_QSTR(q);
}
@@ -298,11 +298,11 @@ const byte *find_subbytes(const byte *haystack, size_t hlen, const byte *needle,
}
for (;;) {
if (memcmp(&haystack[str_index], needle, nlen) == 0) {
- //found
+ // found
return haystack + str_index;
}
if (str_index == str_index_end) {
- //not found
+ // not found
break;
}
str_index += direction;
@@ -407,7 +407,7 @@ mp_obj_t mp_obj_str_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
case MP_BINARY_OP_CONTAINS:
return mp_obj_new_bool(find_subbytes(lhs_data, lhs_len, rhs_data, rhs_len, 1) != NULL);
- //case MP_BINARY_OP_NOT_EQUAL: // This is never passed here
+ // case MP_BINARY_OP_NOT_EQUAL: // This is never passed here
case MP_BINARY_OP_EQUAL: // This will be passed only for bytes, str is dealt with in mp_obj_equal()
case MP_BINARY_OP_LESS:
case MP_BINARY_OP_LESS_EQUAL:
@@ -423,7 +423,7 @@ mp_obj_t mp_obj_str_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_i
#if !MICROPY_PY_BUILTINS_STR_UNICODE
// objstrunicode defines own version
size_t str_offset_to_index(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- size_t offset) {
+ size_t offset) {
if (offset > self_len) {
mp_raise_ValueError(translate("offset out of bounds"));
}
@@ -432,7 +432,7 @@ size_t str_offset_to_index(const mp_obj_type_t *type, const byte *self_data, siz
}
const byte *str_index_to_ptr(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- mp_obj_t index, bool is_slice) {
+ mp_obj_t index, bool is_slice) {
size_t index_val = mp_get_index(type, self_len, index, is_slice);
return self_data + index_val;
}
@@ -444,7 +444,7 @@ STATIC mp_obj_t bytes_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
GET_STR_DATA_LEN(self_in, self_data, self_len);
if (value == MP_OBJ_SENTINEL) {
// load
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_bound_slice_t slice;
if (!mp_seq_get_fast_slice_indexes(self_len, index, &slice)) {
@@ -452,13 +452,13 @@ STATIC mp_obj_t bytes_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
}
return mp_obj_new_str_of_type(type, self_data + slice.start, slice.stop - slice.start);
}
-#endif
+ #endif
size_t index_val = mp_get_index(type, self_len, index, false);
// If we have unicode enabled the type will always be bytes, so take the short cut.
if (MICROPY_PY_BUILTINS_STR_UNICODE || type == &mp_type_bytes) {
return MP_OBJ_NEW_SMALL_INT(self_data[index_val]);
} else {
- return mp_obj_new_str_via_qstr((char*)&self_data[index_val], 1);
+ return mp_obj_new_str_via_qstr((char *)&self_data[index_val], 1);
}
} else {
return MP_OBJ_NULL; // op not supported
@@ -500,7 +500,7 @@ STATIC mp_obj_t str_join(mp_obj_t self_in, mp_obj_t arg) {
// make joined string
vstr_t vstr;
vstr_init_len(&vstr, required_len);
- byte *data = (byte*)vstr.buf;
+ byte *data = (byte *)vstr.buf;
for (size_t i = 0; i < seq_len; i++) {
if (i > 0) {
memcpy(data, sep_str, sep_len);
@@ -535,15 +535,21 @@ mp_obj_t mp_obj_str_split(size_t n_args, const mp_obj_t *args) {
// sep not given, so separate on whitespace
// Initial whitespace is not counted as split, so we pre-do it
- while (s < top && unichar_isspace(*s)) s++;
+ while (s < top && unichar_isspace(*s)) {
+ s++;
+ }
while (s < top && splits != 0) {
const byte *start = s;
- while (s < top && !unichar_isspace(*s)) s++;
+ while (s < top && !unichar_isspace(*s)) {
+ s++;
+ }
mp_obj_list_append(res, mp_obj_new_str_of_type(self_type, start, s - start));
if (s >= top) {
break;
}
- while (s < top && unichar_isspace(*s)) s++;
+ while (s < top && unichar_isspace(*s)) {
+ s++;
+ }
if (splits > 0) {
splits--;
}
@@ -863,7 +869,7 @@ STATIC mp_obj_t str_uni_strip(int type, size_t n_args, const mp_obj_t *args) {
}
assert(last_good_char_pos >= first_good_char_pos);
- //+1 to accommodate the last character
+ // +1 to accommodate the last character
size_t stripped_len = last_good_char_pos - first_good_char_pos + 1;
if (stripped_len == orig_str_len) {
// If nothing was stripped, don't bother to dup original string
@@ -935,18 +941,18 @@ STATIC bool arg_looks_integer(mp_obj_t arg) {
STATIC bool arg_looks_numeric(mp_obj_t arg) {
return arg_looks_integer(arg)
-#if MICROPY_PY_BUILTINS_FLOAT
- || mp_obj_is_float(arg)
-#endif
+ #if MICROPY_PY_BUILTINS_FLOAT
+ || mp_obj_is_float(arg)
+ #endif
;
}
STATIC mp_obj_t arg_as_int(mp_obj_t arg) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
if (mp_obj_is_float(arg)) {
return mp_obj_new_int_from_float(mp_obj_float_get(arg));
}
-#endif
+ #endif
return arg;
}
@@ -972,9 +978,9 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
continue;
}
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("single '}' encountered in format string"));
+ mp_raise_ValueError(translate("single '}' encountered in format string"));
#endif
}
if (*str != '{') {
@@ -1011,16 +1017,16 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
conversion = *str++;
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NORMAL
- mp_raise_ValueError(translate("bad conversion specifier"));
+ mp_raise_ValueError(translate("bad conversion specifier"));
#else
- if (str >= top) {
- mp_raise_ValueError(
- translate("end of format while looking for conversion specifier"));
- } else {
- mp_raise_ValueError_varg(translate("unknown conversion specifier %c"), *str);
- }
+ if (str >= top) {
+ mp_raise_ValueError(
+ translate("end of format while looking for conversion specifier"));
+ } else {
+ mp_raise_ValueError_varg(translate("unknown conversion specifier %c"), *str);
+ }
#endif
}
}
@@ -1048,16 +1054,16 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
}
if (str >= top) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("unmatched '{' in format"));
+ mp_raise_ValueError(translate("unmatched '{' in format"));
#endif
}
if (*str != '}') {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
-:w
+ : w
#else
- mp_raise_ValueError(translate("expected ':' after format specifier"));
+ mp_raise_ValueError(translate("expected ':' after format specifier"));
#endif
}
@@ -1068,10 +1074,10 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
if (MP_LIKELY(unichar_isdigit(*field_name))) {
if (*arg_i > 0) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(
- translate("can't switch from automatic field numbering to manual field specification"));
+ mp_raise_ValueError(
+ translate("can't switch from automatic field numbering to manual field specification"));
#endif
}
field_name = str_to_int(field_name, field_name_top, &index);
@@ -1082,7 +1088,8 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
*arg_i = -1;
} else {
const char *lookup;
- for (lookup = field_name; lookup < field_name_top && *lookup != '.' && *lookup != '['; lookup++);
+ for (lookup = field_name; lookup < field_name_top && *lookup != '.' && *lookup != '['; lookup++) {;
+ }
mp_obj_t field_q = mp_obj_new_str_via_qstr(field_name, lookup - field_name); // should it be via qstr?
field_name = lookup;
mp_map_elem_t *key_elem = mp_map_lookup(kwargs, field_q, MP_MAP_LOOKUP);
@@ -1097,10 +1104,10 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
} else {
if (*arg_i < 0) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(
- translate("can't switch from manual field specification to automatic field numbering"));
+ mp_raise_ValueError(
+ translate("can't switch from manual field specification to automatic field numbering"));
#endif
}
if ((uint)*arg_i >= n_args - 1) {
@@ -1190,9 +1197,9 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
}
if (*s) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("invalid format specifier"));
+ mp_raise_ValueError(translate("invalid format specifier"));
#endif
}
vstr_clear(&format_spec_vstr);
@@ -1211,25 +1218,31 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
if (flags & (PF_FLAG_SHOW_SIGN | PF_FLAG_SPACE_SIGN)) {
if (type == 's') {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("sign not allowed in string format specifier"));
+ mp_raise_ValueError(translate("sign not allowed in string format specifier"));
#endif
}
if (type == 'c') {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(
- translate("sign not allowed with integer format specifier 'c'"));
+ mp_raise_ValueError(
+ translate("sign not allowed with integer format specifier 'c'"));
#endif
}
}
switch (align) {
- case '<': flags |= PF_FLAG_LEFT_ADJUST; break;
- case '=': flags |= PF_FLAG_PAD_AFTER_SIGN; break;
- case '^': flags |= PF_FLAG_CENTER_ADJUST; break;
+ case '<':
+ flags |= PF_FLAG_LEFT_ADJUST;
+ break;
+ case '=':
+ flags |= PF_FLAG_PAD_AFTER_SIGN;
+ break;
+ case '^':
+ flags |= PF_FLAG_CENTER_ADJUST;
+ break;
}
if (arg_looks_integer(arg)) {
@@ -1238,8 +1251,7 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
mp_print_mp_int(&print, arg, 2, 'a', flags, fill, width, 0);
continue;
- case 'c':
- {
+ case 'c': {
char ch = mp_obj_get_int(arg);
mp_print_strn(&print, &ch, 1, flags, fill, width);
continue;
@@ -1277,11 +1289,11 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
default:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError_varg(
- translate("unknown format code '%c' for object of type '%q'"),
- type, mp_obj_get_type_qstr(arg));
+ mp_raise_ValueError_varg(
+ translate("unknown format code '%c' for object of type '%q'"),
+ type, mp_obj_get_type_qstr(arg));
#endif
}
}
@@ -1325,7 +1337,7 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
}
switch (type) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'e':
case 'E':
case 'f':
@@ -1343,17 +1355,17 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
#define F100 100.0
#endif
mp_print_float(&print, mp_obj_get_float(arg) * F100, 'f', flags, fill, width, precision);
- #undef F100
+#undef F100
break;
-#endif
+ #endif
default:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError_varg(
- translate("unknown format code '%c' for object of type '%q'"),
- type, mp_obj_get_type_qstr(arg));
+ mp_raise_ValueError_varg(
+ translate("unknown format code '%c' for object of type '%q'"),
+ type, mp_obj_get_type_qstr(arg));
#endif
}
} else {
@@ -1361,10 +1373,10 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
if (align == '=') {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(
- translate("'=' alignment not allowed in string format specifier"));
+ mp_raise_ValueError(
+ translate("'=' alignment not allowed in string format specifier"));
#endif
}
@@ -1385,11 +1397,11 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar
default:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError_varg(
- translate("unknown format code '%c' for object of type '%q'"),
- type, mp_obj_get_type_qstr(arg));
+ mp_raise_ValueError_varg(
+ translate("unknown format code '%c' for object of type '%q'"),
+ type, mp_obj_get_type_qstr(arg));
#endif
}
}
@@ -1403,7 +1415,7 @@ mp_obj_t mp_obj_str_format(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs
GET_STR_DATA_LEN(args[0], str, len);
int arg_i = 0;
- vstr_t vstr = mp_obj_str_format_helper((const char*)str, (const char*)str + len, &arg_i, n_args, args, kwargs);
+ vstr_t vstr = mp_obj_str_format_helper((const char *)str, (const char *)str + len, &arg_i, n_args, args, kwargs);
return mp_obj_new_str_from_vstr(&mp_type_str, &vstr);
}
MP_DEFINE_CONST_FUN_OBJ_KW(str_format_obj, 1, mp_obj_str_format);
@@ -1443,14 +1455,14 @@ STATIC mp_obj_t str_modulo_format(mp_obj_t pattern, size_t n_args, const mp_obj_
while (*str != ')') {
if (str >= top) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("incomplete format key"));
+ mp_raise_ValueError(translate("incomplete format key"));
#endif
}
++str;
}
- mp_obj_t k_obj = mp_obj_new_str_via_qstr((const char*)key, str - key);
+ mp_obj_t k_obj = mp_obj_new_str_via_qstr((const char *)key, str - key);
arg = mp_obj_dict_get(dict, k_obj);
str++;
}
@@ -1459,14 +1471,20 @@ STATIC mp_obj_t str_modulo_format(mp_obj_t pattern, size_t n_args, const mp_obj_
char fill = ' ';
int alt = 0;
while (str < top) {
- if (*str == '-') flags |= PF_FLAG_LEFT_ADJUST;
- else if (*str == '+') flags |= PF_FLAG_SHOW_SIGN;
- else if (*str == ' ') flags |= PF_FLAG_SPACE_SIGN;
- else if (*str == '#') alt = PF_FLAG_SHOW_PREFIX;
- else if (*str == '0') {
+ if (*str == '-') {
+ flags |= PF_FLAG_LEFT_ADJUST;
+ } else if (*str == '+') {
+ flags |= PF_FLAG_SHOW_SIGN;
+ } else if (*str == ' ') {
+ flags |= PF_FLAG_SPACE_SIGN;
+ } else if (*str == '#') {
+ alt = PF_FLAG_SHOW_PREFIX;
+ } else if (*str == '0') {
flags |= PF_FLAG_PAD_AFTER_SIGN;
fill = '0';
- } else break;
+ } else {
+ break;
+ }
str++;
}
// parse width, if it exists
@@ -1479,7 +1497,7 @@ STATIC mp_obj_t str_modulo_format(mp_obj_t pattern, size_t n_args, const mp_obj_
width = mp_obj_get_int(args[arg_i++]);
str++;
} else {
- str = (const byte*)str_to_int((const char*)str, (const char*)top, &width);
+ str = (const byte *)str_to_int((const char *)str, (const char *)top, &width);
}
}
int prec = -1;
@@ -1493,24 +1511,24 @@ STATIC mp_obj_t str_modulo_format(mp_obj_t pattern, size_t n_args, const mp_obj_
str++;
} else {
prec = 0;
- str = (const byte*)str_to_int((const char*)str, (const char*)top, &prec);
+ str = (const byte *)str_to_int((const char *)str, (const char *)top, &prec);
}
}
}
if (str >= top) {
-incomplete_format:
+ incomplete_format:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError(translate("incomplete format"));
+ mp_raise_ValueError(translate("incomplete format"));
#endif
}
// Tuple value lookup
if (arg == MP_OBJ_NULL) {
if (arg_i >= n_args) {
-not_enough_args:
+ not_enough_args:
mp_raise_TypeError(translate("not enough arguments for format string"));
}
arg = args[arg_i++];
@@ -1538,7 +1556,7 @@ not_enough_args:
mp_print_mp_int(&print, arg_as_int(arg), 10, 'a', flags, fill, width, prec);
break;
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
case 'e':
case 'E':
case 'f':
@@ -1547,7 +1565,7 @@ not_enough_args:
case 'G':
mp_print_float(&print, mp_obj_get_float(arg), *str, flags, fill, width, prec);
break;
-#endif
+ #endif
case 'o':
if (alt) {
@@ -1557,8 +1575,7 @@ not_enough_args:
break;
case 'r':
- case 's':
- {
+ case 's': {
vstr_t arg_vstr;
mp_print_t arg_print;
vstr_init_print(&arg_vstr, 16, &arg_print);
@@ -1588,11 +1605,11 @@ not_enough_args:
default:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- terse_str_format_value_error();
+ terse_str_format_value_error();
#else
- mp_raise_ValueError_varg(
- translate("unsupported format character '%c' (0x%x) at index %d"),
- *str, *str, str - start_str);
+ mp_raise_ValueError_varg(
+ translate("unsupported format character '%c' (0x%x) at index %d"),
+ *str, *str, str - start_str);
#endif
}
}
@@ -1699,7 +1716,7 @@ STATIC mp_obj_t str_replace(size_t n_args, const mp_obj_t *args) {
} else {
// substr found, allocate new string
vstr_init_len(&vstr, replaced_str_index);
- data = (byte*)vstr.buf;
+ data = (byte *)vstr.buf;
assert(data != NULL);
}
} else {
@@ -1812,7 +1829,7 @@ STATIC mp_obj_t str_caseconv(unichar (*op)(unichar), mp_obj_t self_in) {
GET_STR_DATA_LEN(self_in, self_data, self_len);
vstr_t vstr;
vstr_init_len(&vstr, self_len);
- byte *data = (byte*)vstr.buf;
+ byte *data = (byte *)vstr.buf;
for (size_t i = 0; i < self_len; i++) {
*data++ = op(*self_data++);
}
@@ -1920,7 +1937,7 @@ MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(str_encode_obj, 1, 3, str_encode);
mp_int_t mp_obj_str_get_buffer(mp_obj_t self_in, mp_buffer_info_t *bufinfo, mp_uint_t flags) {
if (flags == MP_BUFFER_READ) {
GET_STR_DATA_LEN(self_in, str_data, str_len);
- bufinfo->buf = (void*)str_data;
+ bufinfo->buf = (void *)str_data;
bufinfo->len = str_len;
bufinfo->typecode = 'B'; // bytes should be unsigned, so should unicode byte-access
return 0;
@@ -1934,7 +1951,7 @@ mp_int_t mp_obj_str_get_buffer(mp_obj_t self_in, mp_buffer_info_t *bufinfo, mp_u
}
STATIC const mp_rom_map_elem_t str8_locals_dict_table[] = {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
{ MP_ROM_QSTR(MP_QSTR_decode), MP_ROM_PTR(&bytes_decode_obj) },
#if !MICROPY_PY_BUILTINS_STR_UNICODE
// If we have separate unicode type, then here we have methods only
@@ -1944,7 +1961,7 @@ STATIC const mp_rom_map_elem_t str8_locals_dict_table[] = {
// methods (which should do type checking at runtime).
{ MP_ROM_QSTR(MP_QSTR_encode), MP_ROM_PTR(&str_encode_obj) },
#endif
-#endif
+ #endif
{ MP_ROM_QSTR(MP_QSTR_find), MP_ROM_PTR(&str_find_obj) },
{ MP_ROM_QSTR(MP_QSTR_rfind), MP_ROM_PTR(&str_rfind_obj) },
{ MP_ROM_QSTR(MP_QSTR_index), MP_ROM_PTR(&str_index_obj) },
@@ -1993,7 +2010,7 @@ const mp_obj_type_t mp_type_str = {
.subscr = bytes_subscr,
.getiter = mp_obj_new_str_iterator,
.buffer_p = { .get_buffer = mp_obj_str_get_buffer },
- .locals_dict = (mp_obj_dict_t*)&str8_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&str8_locals_dict,
};
#endif
@@ -2007,16 +2024,16 @@ const mp_obj_type_t mp_type_bytes = {
.subscr = bytes_subscr,
.getiter = mp_obj_new_bytes_iterator,
.buffer_p = { .get_buffer = mp_obj_str_get_buffer },
- .locals_dict = (mp_obj_dict_t*)&str8_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&str8_locals_dict,
};
// The zero-length bytes object, with data that includes a null-terminating byte
-const mp_obj_str_t mp_const_empty_bytes_obj = {{&mp_type_bytes}, 0, 0, (const byte*)""};
+const mp_obj_str_t mp_const_empty_bytes_obj = {{&mp_type_bytes}, 0, 0, (const byte *)""};
// Create a str/bytes object using the given data. New memory is allocated and
// the data is copied across. This function should only be used if the type is bytes,
// or if the type is str and the string data is known to be not interned.
-mp_obj_t mp_obj_new_str_copy(const mp_obj_type_t *type, const byte* data, size_t len) {
+mp_obj_t mp_obj_new_str_copy(const mp_obj_type_t *type, const byte *data, size_t len) {
mp_obj_str_t *o = m_new_obj(mp_obj_str_t);
o->base.type = type;
o->len = len;
@@ -2033,16 +2050,16 @@ mp_obj_t mp_obj_new_str_copy(const mp_obj_type_t *type, const byte* data, size_t
// Create a str/bytes object using the given data. If the type is str and the string
// data is already interned, then a qstr object is returned. Otherwise new memory is
// allocated for the object and the data is copied across.
-mp_obj_t mp_obj_new_str_of_type(const mp_obj_type_t *type, const byte* data, size_t len) {
+mp_obj_t mp_obj_new_str_of_type(const mp_obj_type_t *type, const byte *data, size_t len) {
if (type == &mp_type_str) {
- return mp_obj_new_str((const char*)data, len);
+ return mp_obj_new_str((const char *)data, len);
} else {
return mp_obj_new_bytes(data, len);
}
}
// Create a str using a qstr to store the data; may use existing or new qstr.
-mp_obj_t mp_obj_new_str_via_qstr(const char* data, size_t len) {
+mp_obj_t mp_obj_new_str_via_qstr(const char *data, size_t len) {
return MP_OBJ_NEW_QSTR(qstr_from_strn(data, len));
}
@@ -2064,41 +2081,41 @@ mp_obj_t mp_obj_new_str_from_vstr(const mp_obj_type_t *type, vstr_t *vstr) {
mp_obj_str_t *o = m_new_obj(mp_obj_str_t);
o->base.type = type;
o->len = vstr->len;
- o->hash = qstr_compute_hash((byte*)vstr->buf, vstr->len);
+ o->hash = qstr_compute_hash((byte *)vstr->buf, vstr->len);
if (vstr->len + 1 == vstr->alloc) {
- o->data = (byte*)vstr->buf;
+ o->data = (byte *)vstr->buf;
} else {
- o->data = (byte*)m_renew(char, vstr->buf, vstr->alloc, vstr->len + 1);
+ o->data = (byte *)m_renew(char, vstr->buf, vstr->alloc, vstr->len + 1);
}
- ((byte*)o->data)[o->len] = '\0'; // add null byte
+ ((byte *)o->data)[o->len] = '\0'; // add null byte
vstr->buf = NULL;
vstr->alloc = 0;
return MP_OBJ_FROM_PTR(o);
}
-mp_obj_t mp_obj_new_str(const char* data, size_t len) {
+mp_obj_t mp_obj_new_str(const char *data, size_t len) {
qstr q = qstr_find_strn(data, len);
if (q != MP_QSTR_NULL) {
// qstr with this data already exists
return MP_OBJ_NEW_QSTR(q);
} else {
// no existing qstr, don't make one
- return mp_obj_new_str_copy(&mp_type_str, (const byte*)data, len);
+ return mp_obj_new_str_copy(&mp_type_str, (const byte *)data, len);
}
}
mp_obj_t mp_obj_str_intern(mp_obj_t str) {
GET_STR_DATA_LEN(str, data, len);
- return mp_obj_new_str_via_qstr((const char*)data, len);
+ return mp_obj_new_str_via_qstr((const char *)data, len);
}
mp_obj_t mp_obj_str_intern_checked(mp_obj_t obj) {
size_t len;
const char *data = mp_obj_str_get_data(obj, &len);
- return mp_obj_new_str_via_qstr((const char*)data, len);
+ return mp_obj_new_str_via_qstr((const char *)data, len);
}
-mp_obj_t mp_obj_new_bytes(const byte* data, size_t len) {
+mp_obj_t mp_obj_new_bytes(const byte *data, size_t len) {
return mp_obj_new_str_copy(&mp_type_bytes, data, len);
}
@@ -2131,11 +2148,11 @@ bool mp_obj_str_equal(mp_obj_t s1, mp_obj_t s2) {
STATIC NORETURN void bad_implicit_conversion(mp_obj_t self_in) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("can't convert to str implicitly"));
+ mp_raise_TypeError(translate("can't convert to str implicitly"));
#else
- const qstr src_name = mp_obj_get_type_qstr(self_in);
- mp_raise_TypeError_varg(translate("can't convert '%q' object to %q implicitly"),
- src_name, src_name == MP_QSTR_str ? MP_QSTR_bytes : MP_QSTR_str);
+ const qstr src_name = mp_obj_get_type_qstr(self_in);
+ mp_raise_TypeError_varg(translate("can't convert '%q' object to %q implicitly"),
+ src_name, src_name == MP_QSTR_str ? MP_QSTR_bytes : MP_QSTR_str);
#endif
}
@@ -2146,7 +2163,7 @@ qstr mp_obj_str_get_qstr(mp_obj_t self_in) {
return MP_OBJ_QSTR_VALUE(self_in);
} else if (MP_OBJ_IS_TYPE(self_in, &mp_type_str)) {
mp_obj_str_t *self = MP_OBJ_TO_PTR(self_in);
- return qstr_from_strn((char*)self->data, self->len);
+ return qstr_from_strn((char *)self->data, self->len);
} else {
bad_implicit_conversion(self_in);
}
@@ -2158,7 +2175,7 @@ const char *mp_obj_str_get_str(mp_obj_t self_in) {
if (MP_OBJ_IS_STR_OR_BYTES(self_in)) {
GET_STR_DATA_LEN(self_in, s, l);
(void)l; // len unused
- return (const char*)s;
+ return (const char *)s;
} else {
bad_implicit_conversion(self_in);
}
@@ -2168,7 +2185,7 @@ const char *mp_obj_str_get_data(mp_obj_t self_in, size_t *len) {
if (MP_OBJ_IS_STR_OR_BYTES(self_in)) {
GET_STR_DATA_LEN(self_in, s, l);
*len = l;
- return (const char*)s;
+ return (const char *)s;
} else {
bad_implicit_conversion(self_in);
}
@@ -2179,8 +2196,8 @@ const byte *mp_obj_str_get_data_no_check(mp_obj_t self_in, size_t *len) {
if (MP_OBJ_IS_QSTR(self_in)) {
return qstr_data(MP_OBJ_QSTR_VALUE(self_in), len);
} else {
- *len = ((mp_obj_str_t*)self_in)->len;
- return ((mp_obj_str_t*)self_in)->data;
+ *len = ((mp_obj_str_t *)self_in)->len;
+ return ((mp_obj_str_t *)self_in)->data;
}
}
#endif
@@ -2200,7 +2217,7 @@ STATIC mp_obj_t str_it_iternext(mp_obj_t self_in) {
mp_obj_str8_it_t *self = MP_OBJ_TO_PTR(self_in);
GET_STR_DATA_LEN(self->str, str, len);
if (self->cur < len) {
- mp_obj_t o_out = mp_obj_new_str_via_qstr((const char*)str + self->cur, 1);
+ mp_obj_t o_out = mp_obj_new_str_via_qstr((const char *)str + self->cur, 1);
self->cur += 1;
return o_out;
} else {
@@ -2210,7 +2227,7 @@ STATIC mp_obj_t str_it_iternext(mp_obj_t self_in) {
STATIC mp_obj_t mp_obj_new_str_iterator(mp_obj_t str, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_str8_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_str8_it_t *o = (mp_obj_str8_it_t*)iter_buf;
+ mp_obj_str8_it_t *o = (mp_obj_str8_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = str_it_iternext;
o->str = str;
@@ -2233,7 +2250,7 @@ STATIC mp_obj_t bytes_it_iternext(mp_obj_t self_in) {
mp_obj_t mp_obj_new_bytes_iterator(mp_obj_t str, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_str8_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_str8_it_t *o = (mp_obj_str8_it_t*)iter_buf;
+ mp_obj_str8_it_t *o = (mp_obj_str8_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = bytes_it_iternext;
o->str = str;
diff --git a/py/objstr.h b/py/objstr.h
index cddc6a83a..e1698ca59 100644
--- a/py/objstr.h
+++ b/py/objstr.h
@@ -36,18 +36,18 @@ typedef struct _mp_obj_str_t {
const byte *data;
} mp_obj_str_t;
-#define MP_DEFINE_STR_OBJ(obj_name, str) mp_obj_str_t obj_name = {{&mp_type_str}, 0, sizeof(str) - 1, (const byte*)str}
+#define MP_DEFINE_STR_OBJ(obj_name, str) mp_obj_str_t obj_name = {{&mp_type_str}, 0, sizeof(str) - 1, (const byte *)str}
// use this macro to extract the string hash
// warning: the hash can be 0, meaning invalid, and must then be explicitly computed from the data
#define GET_STR_HASH(str_obj_in, str_hash) \
mp_uint_t str_hash; if (MP_OBJ_IS_QSTR(str_obj_in)) \
- { str_hash = qstr_hash(MP_OBJ_QSTR_VALUE(str_obj_in)); } else { str_hash = ((mp_obj_str_t*)MP_OBJ_TO_PTR(str_obj_in))->hash; }
+ { str_hash = qstr_hash(MP_OBJ_QSTR_VALUE(str_obj_in)); } else { str_hash = ((mp_obj_str_t *)MP_OBJ_TO_PTR(str_obj_in))->hash; }
// use this macro to extract the string length
#define GET_STR_LEN(str_obj_in, str_len) \
size_t str_len; if (MP_OBJ_IS_QSTR(str_obj_in)) \
- { str_len = qstr_len(MP_OBJ_QSTR_VALUE(str_obj_in)); } else { str_len = ((mp_obj_str_t*)MP_OBJ_TO_PTR(str_obj_in))->len; }
+ { str_len = qstr_len(MP_OBJ_QSTR_VALUE(str_obj_in)); } else { str_len = ((mp_obj_str_t *)MP_OBJ_TO_PTR(str_obj_in))->len; }
// use this macro to extract the string data and length
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_C
@@ -58,23 +58,23 @@ const byte *mp_obj_str_get_data_no_check(mp_obj_t self_in, size_t *len);
#define GET_STR_DATA_LEN(str_obj_in, str_data, str_len) \
const byte *str_data; size_t str_len; if (MP_OBJ_IS_QSTR(str_obj_in)) \
{ str_data = qstr_data(MP_OBJ_QSTR_VALUE(str_obj_in), &str_len); } \
- else { str_len = ((mp_obj_str_t*)MP_OBJ_TO_PTR(str_obj_in))->len; str_data = ((mp_obj_str_t*)MP_OBJ_TO_PTR(str_obj_in))->data; }
+ else { str_len = ((mp_obj_str_t *)MP_OBJ_TO_PTR(str_obj_in))->len; str_data = ((mp_obj_str_t *)MP_OBJ_TO_PTR(str_obj_in))->data; }
#endif
mp_obj_t mp_obj_str_make_new(const mp_obj_type_t *type_in, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args);
void mp_str_print_json(const mp_print_t *print, const byte *str_data, size_t str_len);
mp_obj_t mp_obj_str_format(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs);
mp_obj_t mp_obj_str_split(size_t n_args, const mp_obj_t *args);
-mp_obj_t mp_obj_new_str_copy(const mp_obj_type_t *type, const byte* data, size_t len);
-mp_obj_t mp_obj_new_str_of_type(const mp_obj_type_t *type, const byte* data, size_t len);
+mp_obj_t mp_obj_new_str_copy(const mp_obj_type_t *type, const byte *data, size_t len);
+mp_obj_t mp_obj_new_str_of_type(const mp_obj_type_t *type, const byte *data, size_t len);
mp_obj_t mp_obj_str_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_t rhs_in);
mp_int_t mp_obj_str_get_buffer(mp_obj_t self_in, mp_buffer_info_t *bufinfo, mp_uint_t flags);
size_t str_offset_to_index(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- size_t offset);
+ size_t offset);
const byte *str_index_to_ptr(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- mp_obj_t index, bool is_slice);
+ mp_obj_t index, bool is_slice);
const byte *find_subbytes(const byte *haystack, size_t hlen, const byte *needle, size_t nlen, int direction);
extern const char nibble_to_hex_upper[16];
diff --git a/py/objstringio.c b/py/objstringio.c
index eb40e5154..cc853aba6 100644
--- a/py/objstringio.c
+++ b/py/objstringio.c
@@ -116,7 +116,7 @@ STATIC mp_uint_t stringio_ioctl(mp_obj_t o_in, mp_uint_t request, uintptr_t arg,
mp_obj_stringio_t *o = MP_OBJ_TO_PTR(o_in);
switch (request) {
case MP_STREAM_SEEK: {
- struct mp_stream_seek_t *s = (struct mp_stream_seek_t*)arg;
+ struct mp_stream_seek_t *s = (struct mp_stream_seek_t *)arg;
mp_uint_t ref = 0;
switch (s->whence) {
case MP_SEEK_CUR:
@@ -168,7 +168,7 @@ STATIC mp_obj_t stringio_getvalue(mp_obj_t self_in) {
mp_obj_stringio_t *self = MP_OBJ_TO_PTR(self_in);
check_stringio_is_open(self);
// TODO: Try to avoid copying string
- return mp_obj_new_str_of_type(STREAM_TO_CONTENT_TYPE(self), (byte*)self->vstr->buf, self->vstr->len);
+ return mp_obj_new_str_of_type(STREAM_TO_CONTENT_TYPE(self), (byte *)self->vstr->buf, self->vstr->len);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(stringio_getvalue_obj, stringio_getvalue);
@@ -262,7 +262,7 @@ const mp_obj_type_t mp_type_stringio = {
.getiter = mp_identity_getiter,
.iternext = mp_stream_unbuffered_iter,
.protocol = &stringio_stream_p,
- .locals_dict = (mp_obj_dict_t*)&stringio_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&stringio_locals_dict,
};
#if MICROPY_PY_IO_BYTESIO
@@ -274,7 +274,7 @@ const mp_obj_type_t mp_type_bytesio = {
.getiter = mp_identity_getiter,
.iternext = mp_stream_unbuffered_iter,
.protocol = &bytesio_stream_p,
- .locals_dict = (mp_obj_dict_t*)&stringio_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&stringio_locals_dict,
};
#endif
diff --git a/py/objstrunicode.c b/py/objstrunicode.c
index 50250abfa..c86d48e63 100644
--- a/py/objstrunicode.c
+++ b/py/objstrunicode.c
@@ -113,7 +113,7 @@ STATIC mp_obj_t uni_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
}
size_t str_offset_to_index(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- size_t offset) {
+ size_t offset) {
if (offset > self_len) {
mp_raise_ValueError(translate("offset out of bounds"));
}
@@ -135,7 +135,7 @@ size_t str_offset_to_index(const mp_obj_type_t *type, const byte *self_data, siz
// Convert an index into a pointer to its lead byte. Out of bounds indexing will raise IndexError or
// be capped to the first/last character of the string, depending on is_slice.
const byte *str_index_to_ptr(const mp_obj_type_t *type, const byte *self_data, size_t self_len,
- mp_obj_t index, bool is_slice) {
+ mp_obj_t index, bool is_slice) {
// All str functions also handle bytes objects, and they call str_index_to_ptr(),
// so it must handle bytes.
if (type == &mp_type_bytes) {
@@ -154,8 +154,7 @@ const byte *str_index_to_ptr(const mp_obj_type_t *type, const byte *self_data, s
mp_raise_TypeError_varg(translate("string indices must be integers, not %q"), mp_obj_get_type_qstr(index));
}
const byte *s, *top = self_data + self_len;
- if (i < 0)
- {
+ if (i < 0) {
// Negative indexing is performed by counting from the end of the string.
for (s = top - 1; i; --s) {
if (s < self_data) {
@@ -203,7 +202,7 @@ STATIC mp_obj_t str_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
GET_STR_DATA_LEN(self_in, self_data, self_len);
if (value == MP_OBJ_SENTINEL) {
// load
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_obj_t ostart, ostop, ostep;
mp_obj_slice_get(index, &ostart, &ostop, &ostep);
@@ -229,7 +228,7 @@ STATIC mp_obj_t str_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
}
return mp_obj_new_str_of_type(type, (const byte *)pstart, pstop - pstart);
}
-#endif
+ #endif
const byte *s = str_index_to_ptr(type, self_data, self_len, index, false);
int len = 1;
if (UTF8_IS_NONASCII(*s)) {
@@ -238,16 +237,16 @@ STATIC mp_obj_t str_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
++len;
}
}
- return mp_obj_new_str_via_qstr((const char*)s, len); // This will create a one-character string
+ return mp_obj_new_str_via_qstr((const char *)s, len); // This will create a one-character string
} else {
return MP_OBJ_NULL; // op not supported
}
}
STATIC const mp_rom_map_elem_t struni_locals_dict_table[] = {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
{ MP_ROM_QSTR(MP_QSTR_encode), MP_ROM_PTR(&str_encode_obj) },
-#endif
+ #endif
{ MP_ROM_QSTR(MP_QSTR_find), MP_ROM_PTR(&str_find_obj) },
{ MP_ROM_QSTR(MP_QSTR_rfind), MP_ROM_PTR(&str_rfind_obj) },
{ MP_ROM_QSTR(MP_QSTR_index), MP_ROM_PTR(&str_index_obj) },
@@ -294,7 +293,7 @@ const mp_obj_type_t mp_type_str = {
.subscr = str_subscr,
.getiter = mp_obj_new_str_iterator,
.buffer_p = { .get_buffer = mp_obj_str_get_buffer },
- .locals_dict = (mp_obj_dict_t*)&struni_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&struni_locals_dict,
};
/******************************************************************************/
@@ -313,7 +312,7 @@ STATIC mp_obj_t str_it_iternext(mp_obj_t self_in) {
if (self->cur < len) {
const byte *cur = str + self->cur;
const byte *end = utf8_next_char(str + self->cur);
- mp_obj_t o_out = mp_obj_new_str_via_qstr((const char*)cur, end - cur);
+ mp_obj_t o_out = mp_obj_new_str_via_qstr((const char *)cur, end - cur);
self->cur += end - cur;
return o_out;
} else {
@@ -323,7 +322,7 @@ STATIC mp_obj_t str_it_iternext(mp_obj_t self_in) {
STATIC mp_obj_t mp_obj_new_str_iterator(mp_obj_t str, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_str_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_str_it_t *o = (mp_obj_str_it_t*)iter_buf;
+ mp_obj_str_it_t *o = (mp_obj_str_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = str_it_iternext;
o->str = str;
diff --git a/py/objtuple.c b/py/objtuple.c
index d34a7f762..fea472823 100644
--- a/py/objtuple.c
+++ b/py/objtuple.c
@@ -125,7 +125,8 @@ STATIC mp_obj_t tuple_cmp_helper(mp_uint_t op, mp_obj_t self_in, mp_obj_t anothe
mp_obj_t mp_obj_tuple_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
mp_obj_tuple_t *self = MP_OBJ_TO_PTR(self_in);
switch (op) {
- case MP_UNARY_OP_BOOL: return mp_obj_new_bool(self->len != 0);
+ case MP_UNARY_OP_BOOL:
+ return mp_obj_new_bool(self->len != 0);
case MP_UNARY_OP_HASH: {
// start hash with pointer to empty tuple, to make it fairly unique
mp_int_t hash = (mp_int_t)mp_const_empty_tuple;
@@ -134,8 +135,10 @@ mp_obj_t mp_obj_tuple_unary_op(mp_unary_op_t op, mp_obj_t self_in) {
}
return MP_OBJ_NEW_SMALL_INT(hash);
}
- case MP_UNARY_OP_LEN: return MP_OBJ_NEW_SMALL_INT(self->len);
- default: return MP_OBJ_NULL; // op not supported
+ case MP_UNARY_OP_LEN:
+ return MP_OBJ_NEW_SMALL_INT(self->len);
+ default:
+ return MP_OBJ_NULL; // op not supported
}
}
@@ -187,7 +190,7 @@ mp_obj_t mp_obj_tuple_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
self = mp_instance_cast_to_native_base(self_in, &mp_type_tuple);
}
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
if (MP_OBJ_IS_TYPE(index, &mp_type_slice)) {
mp_bound_slice_t slice;
if (!mp_seq_get_fast_slice_indexes(self->len, index, &slice)) {
@@ -197,7 +200,7 @@ mp_obj_t mp_obj_tuple_subscr(mp_obj_t self_in, mp_obj_t index, mp_obj_t value) {
mp_seq_copy(res->items, self->items + slice.start, res->len, mp_obj_t);
return MP_OBJ_FROM_PTR(res);
}
-#endif
+ #endif
size_t index_value = mp_get_index(self->base.type, self->len, index, false);
return self->items[index_value];
} else {
@@ -235,7 +238,7 @@ const mp_obj_type_t mp_type_tuple = {
.binary_op = mp_obj_tuple_binary_op,
.subscr = mp_obj_tuple_subscr,
.getiter = mp_obj_tuple_getiter,
- .locals_dict = (mp_obj_dict_t*)&tuple_locals_dict,
+ .locals_dict = (mp_obj_dict_t *)&tuple_locals_dict,
};
// the zero-length tuple
@@ -293,7 +296,7 @@ STATIC mp_obj_t tuple_it_iternext(mp_obj_t self_in) {
mp_obj_t mp_obj_tuple_getiter(mp_obj_t o_in, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_tuple_it_t) <= sizeof(mp_obj_iter_buf_t));
- mp_obj_tuple_it_t *o = (mp_obj_tuple_it_t*)iter_buf;
+ mp_obj_tuple_it_t *o = (mp_obj_tuple_it_t *)iter_buf;
o->base.type = &mp_type_polymorph_iter;
o->iternext = tuple_it_iternext;
o->tuple = MP_OBJ_TO_PTR(o_in);
diff --git a/py/objtuple.h b/py/objtuple.h
index d2e87e994..7bfb447fa 100644
--- a/py/objtuple.h
+++ b/py/objtuple.h
@@ -54,7 +54,7 @@ extern const mp_obj_type_t mp_type_attrtuple;
const mp_rom_obj_tuple_t tuple_obj_name = { \
.base = {&mp_type_attrtuple}, \
.len = nitems, \
- .items = { __VA_ARGS__ , MP_ROM_PTR((void*)fields) } \
+ .items = { __VA_ARGS__, MP_ROM_PTR((void *)fields) } \
}
#if MICROPY_PY_COLLECTIONS
diff --git a/py/objtype.c b/py/objtype.c
index 1254b015c..b7b2d156b 100644
--- a/py/objtype.c
+++ b/py/objtype.c
@@ -46,7 +46,7 @@
#endif
#define ENABLE_SPECIAL_ACCESSORS \
- (MICROPY_PY_DESCRIPTORS || MICROPY_PY_DELATTR_SETATTR || MICROPY_PY_BUILTINS_PROPERTY)
+ (MICROPY_PY_DESCRIPTORS || MICROPY_PY_DELATTR_SETATTR || MICROPY_PY_BUILTINS_PROPERTY)
#define TYPE_FLAG_IS_SUBCLASSED (0x0001)
#define TYPE_FLAG_HAS_SPECIAL_ACCESSORS (0x0002)
@@ -70,7 +70,7 @@ STATIC int instance_count_native_bases(const mp_obj_type_t *type, const mp_obj_t
// No parents so end search here.
return count;
#if MICROPY_MULTIPLE_INHERITANCE
- } else if (((mp_obj_base_t*)type->parent)->type == &mp_type_tuple) {
+ } else if (((mp_obj_base_t *)type->parent)->type == &mp_type_tuple) {
// Multiple parents, search through them all recursively.
const mp_obj_tuple_t *parent_tuple = type->parent;
const mp_obj_t *item = parent_tuple->items;
@@ -150,7 +150,7 @@ struct class_lookup_data {
bool is_type;
};
-STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_type_t *type) {
+STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_type_t *type) {
assert(lookup->dest[0] == MP_OBJ_NULL);
assert(lookup->dest[1] == MP_OBJ_NULL);
for (;;) {
@@ -160,10 +160,10 @@ STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_
// this should not be applied to class types, as will result in extra
// lookup either.
if (lookup->meth_offset != 0 && mp_obj_is_native_type(type)) {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wcast-align"
- if (*(void**)((char*)type + lookup->meth_offset) != NULL) {
-#pragma GCC diagnostic pop
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wcast-align"
+ if (*(void **)((char *)type + lookup->meth_offset) != NULL) {
+ #pragma GCC diagnostic pop
DEBUG_printf("mp_obj_class_lookup: Matched special meth slot (off=%d) for %s\n",
lookup->meth_offset, qstr_str(lookup->attr));
lookup->dest[0] = MP_OBJ_SENTINEL;
@@ -180,7 +180,7 @@ STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_
if (lookup->is_type) {
// If we look up a class method, we need to return original type for which we
// do a lookup, not a (base) type in which we found the class method.
- const mp_obj_type_t *org_type = (const mp_obj_type_t*)lookup->obj;
+ const mp_obj_type_t *org_type = (const mp_obj_type_t *)lookup->obj;
mp_convert_member_lookup(MP_OBJ_NULL, org_type, elem->value, lookup->dest);
} else if (MP_OBJ_IS_TYPE(elem->value, &mp_type_property)) {
lookup->dest[0] = elem->value;
@@ -189,12 +189,13 @@ STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_
mp_obj_instance_t *obj = lookup->obj;
mp_convert_member_lookup(MP_OBJ_FROM_PTR(obj), type, elem->value, lookup->dest);
}
-#if DEBUG_PRINT
+ #if DEBUG_PRINT
printf("mp_obj_class_lookup: Returning: ");
- mp_obj_print(lookup->dest[0], PRINT_REPR); printf(" ");
+ mp_obj_print(lookup->dest[0], PRINT_REPR);
+ printf(" ");
// Don't try to repr() lookup->dest[1], as we can be called recursively
printf("<%q @%p>\n", mp_obj_get_type_qstr(lookup->dest[1]), lookup->dest[1]);
-#endif
+ #endif
return;
}
}
@@ -215,13 +216,13 @@ STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_
DEBUG_printf("mp_obj_class_lookup: No more parents\n");
return;
#if MICROPY_MULTIPLE_INHERITANCE
- } else if (((mp_obj_base_t*)type->parent)->type == &mp_type_tuple) {
+ } else if (((mp_obj_base_t *)type->parent)->type == &mp_type_tuple) {
const mp_obj_tuple_t *parent_tuple = type->parent;
const mp_obj_t *item = parent_tuple->items;
const mp_obj_t *top = item + parent_tuple->len - 1;
for (; item < top; ++item) {
assert(MP_OBJ_IS_TYPE(*item, &mp_type_type));
- mp_obj_type_t *bt = (mp_obj_type_t*)MP_OBJ_TO_PTR(*item);
+ mp_obj_type_t *bt = (mp_obj_type_t *)MP_OBJ_TO_PTR(*item);
if (bt == &mp_type_object) {
// Not a "real" type
continue;
@@ -234,7 +235,7 @@ STATIC void mp_obj_class_lookup(struct class_lookup_data *lookup, const mp_obj_
// search last base (simple tail recursion elimination)
assert(MP_OBJ_IS_TYPE(*item, &mp_type_type));
- type = (mp_obj_type_t*)MP_OBJ_TO_PTR(*item);
+ type = (mp_obj_type_t *)MP_OBJ_TO_PTR(*item);
#endif
} else {
type = type->parent;
@@ -374,10 +375,10 @@ mp_obj_t mp_obj_instance_make_new(const mp_obj_type_t *self, size_t n_args, cons
}
if (init_ret != mp_const_none) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("__init__() should return None"));
+ mp_raise_TypeError(translate("__init__() should return None"));
#else
- mp_raise_TypeError_varg(translate("__init__() should return None, not '%q'"),
- mp_obj_get_type_qstr(init_ret));
+ mp_raise_TypeError_varg(translate("__init__() should return None, not '%q'"),
+ mp_obj_get_type_qstr(init_ret));
#endif
}
@@ -596,7 +597,7 @@ STATIC void mp_obj_instance_load_attr(mp_obj_t self_in, qstr attr, mp_obj_t *des
dest[0] = elem->value;
return;
}
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
if (attr == MP_QSTR___dict__) {
// Create a new dict with a copy of the instance's map items.
// This creates, unlike CPython, a 'read-only' __dict__: modifying
@@ -611,7 +612,7 @@ STATIC void mp_obj_instance_load_attr(mp_obj_t self_in, qstr attr, mp_obj_t *des
dest[0] = attr_dict;
return;
}
-#endif
+ #endif
struct class_lookup_data lookup = {
.obj = self,
.attr = attr,
@@ -889,10 +890,10 @@ mp_obj_t mp_obj_instance_call(mp_obj_t self_in, size_t n_args, size_t n_kw, cons
mp_obj_t call = mp_obj_instance_get_call(self_in, member);
if (call == MP_OBJ_NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object not callable"));
+ mp_raise_TypeError(translate("object not callable"));
#else
- mp_raise_TypeError_varg(translate("'%q' object is not callable"),
- mp_obj_get_type_qstr(self_in));
+ mp_raise_TypeError_varg(translate("'%q' object is not callable"),
+ mp_obj_get_type_qstr(self_in));
#endif
}
mp_obj_instance_t *self = MP_OBJ_TO_PTR(self_in);
@@ -1025,9 +1026,9 @@ STATIC mp_obj_t type_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const mp
if (self->make_new == NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("cannot create instance"));
+ mp_raise_TypeError(translate("cannot create instance"));
#else
- mp_raise_TypeError_varg(translate("cannot create '%q' instances"), self->name);
+ mp_raise_TypeError_varg(translate("cannot create '%q' instances"), self->name);
#endif
}
@@ -1053,7 +1054,7 @@ STATIC void type_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
}
#endif
struct class_lookup_data lookup = {
- .obj = (mp_obj_instance_t*)self,
+ .obj = (mp_obj_instance_t *)self,
.attr = attr,
.meth_offset = 0,
.dest = dest,
@@ -1135,10 +1136,10 @@ mp_obj_t mp_obj_new_type(qstr name, mp_obj_t bases_tuple, mp_obj_t locals_dict)
// TODO: Verify with CPy, tested on function type
if (t->make_new == NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("type is not an acceptable base type"));
+ mp_raise_TypeError(translate("type is not an acceptable base type"));
#else
- mp_raise_TypeError_varg(
- translate("type '%q' is not an acceptable base type"), t->name);
+ mp_raise_TypeError_varg(
+ translate("type '%q' is not an acceptable base type"), t->name);
#endif
}
#if ENABLE_SPECIAL_ACCESSORS
@@ -1161,7 +1162,7 @@ mp_obj_t mp_obj_new_type(qstr name, mp_obj_t bases_tuple, mp_obj_t locals_dict)
o->attr = mp_obj_instance_attr;
o->subscr = instance_subscr;
o->getiter = instance_getiter;
- //o->iternext = ; not implemented
+ // o->iternext = ; not implemented
o->buffer_p.get_buffer = instance_get_buffer;
if (bases_len > 0) {
@@ -1169,7 +1170,7 @@ mp_obj_t mp_obj_new_type(qstr name, mp_obj_t bases_tuple, mp_obj_t locals_dict)
// abstract base class which would translate C-level protocol to
// Python method calls, and any subclass inheriting from it will
// support this feature.
- o->protocol = ((mp_obj_type_t*)MP_OBJ_TO_PTR(bases_items[0]))->protocol;
+ o->protocol = ((mp_obj_type_t *)MP_OBJ_TO_PTR(bases_items[0]))->protocol;
if (bases_len >= 2) {
#if MICROPY_MULTIPLE_INHERITANCE
@@ -1195,10 +1196,10 @@ mp_obj_t mp_obj_new_type(qstr name, mp_obj_t bases_tuple, mp_obj_t locals_dict)
#if ENABLE_SPECIAL_ACCESSORS
// Check if the class has any special accessor methods
if (!(o->flags & TYPE_FLAG_HAS_SPECIAL_ACCESSORS) &&
- (map_has_special_accessors(locals_map) ||
- (num_native_bases == 1 &&
- native_base->locals_dict != NULL &&
- map_has_special_accessors(&native_base->locals_dict->map)))) {
+ (map_has_special_accessors(locals_map) ||
+ (num_native_bases == 1 &&
+ native_base->locals_dict != NULL &&
+ map_has_special_accessors(&native_base->locals_dict->map)))) {
o->flags |= TYPE_FLAG_HAS_SPECIAL_ACCESSORS;
}
#endif
@@ -1239,11 +1240,11 @@ STATIC mp_obj_t super_make_new(const mp_obj_type_t *type_in, size_t n_args, cons
// 0 arguments are turned into 2 in the compiler
// 1 argument is not yet implemented
mp_arg_check_num(n_args, kw_args, 2, 2, false);
- if(!MP_OBJ_IS_TYPE(args[0], &mp_type_type)) {
+ if (!MP_OBJ_IS_TYPE(args[0], &mp_type_type)) {
mp_raise_TypeError(translate("first argument to super() must be type"));
}
mp_obj_super_t *o = m_new_obj(mp_obj_super_t);
- *o = (mp_obj_super_t){{type_in}, args[0], args[1]};
+ *o = (mp_obj_super_t) {{type_in}, args[0], args[1]};
return MP_OBJ_FROM_PTR(o);
}
@@ -1276,7 +1277,7 @@ STATIC void super_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
if (type->parent == NULL) {
// no parents, do nothing
#if MICROPY_MULTIPLE_INHERITANCE
- } else if (((mp_obj_base_t*)type->parent)->type == &mp_type_tuple) {
+ } else if (((mp_obj_base_t *)type->parent)->type == &mp_type_tuple) {
const mp_obj_tuple_t *parent_tuple = type->parent;
size_t len = parent_tuple->len;
const mp_obj_t *items = parent_tuple->items;
@@ -1287,7 +1288,7 @@ STATIC void super_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
// and we don't want to lookup native methods in object.
continue;
}
- mp_obj_class_lookup(&lookup, (mp_obj_type_t*)MP_OBJ_TO_PTR(items[i]));
+ mp_obj_class_lookup(&lookup, (mp_obj_type_t *)MP_OBJ_TO_PTR(items[i]));
if (dest[0] != MP_OBJ_NULL) {
break;
}
@@ -1373,7 +1374,7 @@ bool mp_obj_is_subclass_fast(mp_const_obj_t object, mp_const_obj_t classinfo) {
// type has no parents
return false;
#if MICROPY_MULTIPLE_INHERITANCE
- } else if (((mp_obj_base_t*)self->parent)->type == &mp_type_tuple) {
+ } else if (((mp_obj_base_t *)self->parent)->type == &mp_type_tuple) {
// get the base objects (they should be type objects)
const mp_obj_tuple_t *parent_tuple = self->parent;
const mp_obj_t *item = parent_tuple->items;
@@ -1440,7 +1441,7 @@ mp_obj_t mp_instance_cast_to_native_base(mp_obj_t self_in, mp_const_obj_t native
if (MP_OBJ_FROM_PTR(self_type) == native_type) {
return self_in;
}
- mp_obj_instance_t *self = (mp_obj_instance_t*)MP_OBJ_TO_PTR(self_in);
+ mp_obj_instance_t *self = (mp_obj_instance_t *)MP_OBJ_TO_PTR(self_in);
return self->subobj[0];
}
@@ -1453,7 +1454,7 @@ STATIC mp_obj_t static_class_method_make_new(const mp_obj_type_t *self, size_t n
mp_arg_check_num(n_args, kw_args, 1, 1, false);
mp_obj_static_class_method_t *o = m_new_obj(mp_obj_static_class_method_t);
- *o = (mp_obj_static_class_method_t){{self}, args[0]};
+ *o = (mp_obj_static_class_method_t) {{self}, args[0]};
return MP_OBJ_FROM_PTR(o);
}
diff --git a/py/parse.c b/py/parse.c
index 28621cf89..c8a975e0d 100644
--- a/py/parse.c
+++ b/py/parse.c
@@ -58,13 +58,13 @@
#define RULE_ARG_OPT_RULE (0x3000)
// (un)comment to use rule names; for debugging
-//#define USE_RULE_NAME (1)
+// #define USE_RULE_NAME (1)
enum {
// define rules with a compile function
#define DEF_RULE(rule, comp, kind, ...) RULE_##rule,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
RULE_const_object, // special node for a constant, generic Python object
@@ -72,7 +72,7 @@ enum {
// define rules without a compile function
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) RULE_##rule,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
};
@@ -89,7 +89,7 @@ STATIC const uint8_t rule_act_table[] = {
#define DEF_RULE(rule, comp, kind, ...) kind,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
@@ -97,7 +97,7 @@ STATIC const uint8_t rule_act_table[] = {
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) kind,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
@@ -118,13 +118,13 @@ STATIC const uint16_t rule_arg_combined_table[] = {
#define DEF_RULE(rule, comp, kind, ...) __VA_ARGS__,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) __VA_ARGS__,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
@@ -144,12 +144,12 @@ STATIC const uint16_t rule_arg_combined_table[] = {
enum {
#define DEF_RULE(rule, comp, kind, ...) RULE_PADDING(rule, __VA_ARGS__)
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) RULE_PADDING(rule, __VA_ARGS__)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
};
@@ -167,13 +167,13 @@ enum {
STATIC const uint8_t rule_arg_offset_table[] = {
#define DEF_RULE(rule, comp, kind, ...) RULE_ARG_OFFSET(rule, __VA_ARGS__) & 0xff,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
0, // RULE_const_object
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) RULE_ARG_OFFSET(rule, __VA_ARGS__) & 0xff,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
};
@@ -190,20 +190,20 @@ static const size_t FIRST_RULE_WITH_OFFSET_ABOVE_255 =
#include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
-0;
+ 0;
#if defined(USE_RULE_NAME) && USE_RULE_NAME
// Define an array of rule names corresponding to each rule
STATIC const char *const rule_name_table[] = {
#define DEF_RULE(rule, comp, kind, ...) #rule,
#define DEF_RULE_NC(rule, kind, ...)
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
"", // RULE_const_object
#define DEF_RULE(rule, comp, kind, ...)
#define DEF_RULE_NC(rule, kind, ...) #rule,
-#include "py/grammar.h"
+ #include "py/grammar.h"
#undef DEF_RULE
#undef DEF_RULE_NC
};
@@ -261,7 +261,7 @@ STATIC void *parser_alloc(parser_t *parser, size_t num_bytes) {
if (chunk != NULL && chunk->union_.used + num_bytes > chunk->alloc) {
// not enough room at end of previously allocated chunk so try to grow
- mp_parse_chunk_t *new_data = (mp_parse_chunk_t*)m_renew_maybe(byte, chunk,
+ mp_parse_chunk_t *new_data = (mp_parse_chunk_t *)m_renew_maybe(byte, chunk,
sizeof(mp_parse_chunk_t) + chunk->alloc,
sizeof(mp_parse_chunk_t) + chunk->alloc + num_bytes, false);
if (new_data == NULL) {
@@ -284,7 +284,7 @@ STATIC void *parser_alloc(parser_t *parser, size_t num_bytes) {
if (alloc < num_bytes) {
alloc = num_bytes;
}
- chunk = (mp_parse_chunk_t*)m_new(byte, sizeof(mp_parse_chunk_t) + alloc);
+ chunk = (mp_parse_chunk_t *)m_new(byte, sizeof(mp_parse_chunk_t) + alloc);
chunk->alloc = alloc;
chunk->union_.used = 0;
parser->cur_chunk = chunk;
@@ -324,12 +324,12 @@ STATIC uint8_t pop_rule(parser_t *parser, size_t *arg_i, size_t *src_line) {
bool mp_parse_node_is_const_false(mp_parse_node_t pn) {
return MP_PARSE_NODE_IS_TOKEN_KIND(pn, MP_TOKEN_KW_FALSE)
- || (MP_PARSE_NODE_IS_SMALL_INT(pn) && MP_PARSE_NODE_LEAF_SMALL_INT(pn) == 0);
+ || (MP_PARSE_NODE_IS_SMALL_INT(pn) && MP_PARSE_NODE_LEAF_SMALL_INT(pn) == 0);
}
bool mp_parse_node_is_const_true(mp_parse_node_t pn) {
return MP_PARSE_NODE_IS_TOKEN_KIND(pn, MP_TOKEN_KW_TRUE)
- || (MP_PARSE_NODE_IS_SMALL_INT(pn) && MP_PARSE_NODE_LEAF_SMALL_INT(pn) != 0);
+ || (MP_PARSE_NODE_IS_SMALL_INT(pn) && MP_PARSE_NODE_LEAF_SMALL_INT(pn) != 0);
}
bool mp_parse_node_get_int_maybe(mp_parse_node_t pn, mp_obj_t *o) {
@@ -337,7 +337,7 @@ bool mp_parse_node_get_int_maybe(mp_parse_node_t pn, mp_obj_t *o) {
*o = MP_OBJ_NEW_SMALL_INT(MP_PARSE_NODE_LEAF_SMALL_INT(pn));
return true;
} else if (MP_PARSE_NODE_IS_STRUCT_KIND(pn, RULE_const_object)) {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D
// nodes are 32-bit pointers, but need to extract 64-bit object
*o = (uint64_t)pns->nodes[0] | ((uint64_t)pns->nodes[1] << 32);
@@ -358,7 +358,7 @@ int mp_parse_node_extract_list(mp_parse_node_t *pn, size_t pn_kind, mp_parse_nod
*nodes = pn;
return 1;
} else {
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)(*pn);
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)(*pn);
if (MP_PARSE_NODE_STRUCT_KIND(pns) != pn_kind) {
*nodes = pn;
return 1;
@@ -372,7 +372,7 @@ int mp_parse_node_extract_list(mp_parse_node_t *pn, size_t pn_kind, mp_parse_nod
#if MICROPY_DEBUG_PRINTERS
void mp_parse_node_print(mp_parse_node_t pn, size_t indent) {
if (MP_PARSE_NODE_IS_STRUCT(pn)) {
- printf("[% 4d] ", (int)((mp_parse_node_struct_t*)pn)->source_line);
+ printf("[% 4d] ", (int)((mp_parse_node_struct_t *)pn)->source_line);
} else {
printf(" ");
}
@@ -387,16 +387,23 @@ void mp_parse_node_print(mp_parse_node_t pn, size_t indent) {
} else if (MP_PARSE_NODE_IS_LEAF(pn)) {
uintptr_t arg = MP_PARSE_NODE_LEAF_ARG(pn);
switch (MP_PARSE_NODE_LEAF_KIND(pn)) {
- case MP_PARSE_NODE_ID: printf("id(%s)\n", qstr_str(arg)); break;
- case MP_PARSE_NODE_STRING: printf("str(%s)\n", qstr_str(arg)); break;
- case MP_PARSE_NODE_BYTES: printf("bytes(%s)\n", qstr_str(arg)); break;
+ case MP_PARSE_NODE_ID:
+ printf("id(%s)\n", qstr_str(arg));
+ break;
+ case MP_PARSE_NODE_STRING:
+ printf("str(%s)\n", qstr_str(arg));
+ break;
+ case MP_PARSE_NODE_BYTES:
+ printf("bytes(%s)\n", qstr_str(arg));
+ break;
default:
assert(MP_PARSE_NODE_LEAF_KIND(pn) == MP_PARSE_NODE_TOKEN);
- printf("tok(%u)\n", (uint)arg); break;
+ printf("tok(%u)\n", (uint)arg);
+ break;
}
} else {
// node must be a mp_parse_node_struct_t
- mp_parse_node_struct_t *pns = (mp_parse_node_struct_t*)pn;
+ mp_parse_node_struct_t *pns = (mp_parse_node_struct_t *)pn;
if (MP_PARSE_NODE_STRUCT_KIND(pns) == RULE_const_object) {
#if MICROPY_OBJ_REPR == MICROPY_OBJ_REPR_D
printf("literal const(%016llx)\n", (uint64_t)pns->nodes[0] | ((uint64_t)pns->nodes[1] << 32));
@@ -477,7 +484,7 @@ STATIC void push_result_token(parser_t *parser, uint8_t rule_id) {
mp_parse_node_t pn;
mp_lexer_t *lex = parser->lexer;
if (lex->tok_kind == MP_TOKEN_NAME) {
- if(lex->vstr.len >= (1 << (8 * MICROPY_QSTR_BYTES_IN_LEN))) {
+ if (lex->vstr.len >= (1 << (8 * MICROPY_QSTR_BYTES_IN_LEN))) {
mp_raise_msg(&mp_type_SyntaxError, translate("Name too long"));
}
qstr id = qstr_from_strn(lex->vstr.buf, lex->vstr.len);
@@ -526,7 +533,7 @@ STATIC void push_result_token(parser_t *parser, uint8_t rule_id) {
// not interned, make a node holding a pointer to the string/bytes object
mp_obj_t o = mp_obj_new_str_copy(
lex->tok_kind == MP_TOKEN_STRING ? &mp_type_str : &mp_type_bytes,
- (const byte*)lex->vstr.buf, lex->vstr.len);
+ (const byte *)lex->vstr.buf, lex->vstr.len);
pn = make_node_const_object(parser, lex->tok_line, o);
}
} else {
@@ -639,8 +646,8 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) {
arg0 = mp_binary_op(op, arg0, arg1);
}
} else if (rule_id == RULE_shift_expr
- || rule_id == RULE_arith_expr
- || rule_id == RULE_term) {
+ || rule_id == RULE_arith_expr
+ || rule_id == RULE_term) {
// folding for binary ops: << >> + - * / % //
mp_parse_node_t pn = peek_result(parser, num_args - 1);
if (!mp_parse_node_get_int_maybe(pn, &arg0)) {
@@ -657,13 +664,13 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) {
MP_BINARY_OP_ADD,
MP_BINARY_OP_SUBTRACT,
MP_BINARY_OP_MULTIPLY,
- 255,//MP_BINARY_OP_POWER,
- 255,//MP_BINARY_OP_TRUE_DIVIDE,
+ 255,// MP_BINARY_OP_POWER,
+ 255,// MP_BINARY_OP_TRUE_DIVIDE,
MP_BINARY_OP_FLOOR_DIVIDE,
MP_BINARY_OP_MODULO,
- 255,//MP_BINARY_OP_LESS
+ 255,// MP_BINARY_OP_LESS
MP_BINARY_OP_LSHIFT,
- 255,//MP_BINARY_OP_MORE
+ 255,// MP_BINARY_OP_MORE
MP_BINARY_OP_RSHIFT,
};
mp_binary_op_t op = token_to_op[tok - MP_TOKEN_OP_PLUS];
@@ -707,14 +714,14 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) {
mp_parse_node_t pn1 = peek_result(parser, 0);
if (!MP_PARSE_NODE_IS_NULL(pn1)
&& !(MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_expr_stmt_augassign)
- || MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_expr_stmt_assign_list))) {
+ || MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_expr_stmt_assign_list))) {
// this node is of the form <x> = <y>
mp_parse_node_t pn0 = peek_result(parser, 1);
if (MP_PARSE_NODE_IS_ID(pn0)
&& MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_atom_expr_normal)
- && MP_PARSE_NODE_IS_ID(((mp_parse_node_struct_t*)pn1)->nodes[0])
- && MP_PARSE_NODE_LEAF_ARG(((mp_parse_node_struct_t*)pn1)->nodes[0]) == MP_QSTR_const
- && MP_PARSE_NODE_IS_STRUCT_KIND(((mp_parse_node_struct_t*)pn1)->nodes[1], RULE_trailer_paren)
+ && MP_PARSE_NODE_IS_ID(((mp_parse_node_struct_t *)pn1)->nodes[0])
+ && MP_PARSE_NODE_LEAF_ARG(((mp_parse_node_struct_t *)pn1)->nodes[0]) == MP_QSTR_const
+ && MP_PARSE_NODE_IS_STRUCT_KIND(((mp_parse_node_struct_t *)pn1)->nodes[1], RULE_trailer_paren)
) {
// code to assign dynamic constants: id = const(value)
@@ -722,13 +729,13 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) {
qstr id = MP_PARSE_NODE_LEAF_ARG(pn0);
// get the value
- mp_parse_node_t pn_value = ((mp_parse_node_struct_t*)((mp_parse_node_struct_t*)pn1)->nodes[1])->nodes[0];
+ mp_parse_node_t pn_value = ((mp_parse_node_struct_t *)((mp_parse_node_struct_t *)pn1)->nodes[1])->nodes[0];
mp_obj_t value;
if (!mp_parse_node_get_int_maybe(pn_value, &value)) {
mp_obj_t exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
translate("constant must be an integer"));
mp_obj_exception_add_traceback(exc, parser->lexer->source_name,
- ((mp_parse_node_struct_t*)pn1)->source_line, MP_QSTR_NULL);
+ ((mp_parse_node_struct_t *)pn1)->source_line, MP_QSTR_NULL);
nlr_raise(exc);
}
@@ -762,16 +769,16 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) {
mp_parse_node_t pn0 = peek_result(parser, 1);
mp_parse_node_t pn1 = peek_result(parser, 0);
if (!(MP_PARSE_NODE_IS_ID(pn0)
- && MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_trailer_period))) {
+ && MP_PARSE_NODE_IS_STRUCT_KIND(pn1, RULE_trailer_period))) {
return false;
}
// id1.id2
// look it up in constant table, see if it can be replaced with an integer
- mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t*)pn1;
+ mp_parse_node_struct_t *pns1 = (mp_parse_node_struct_t *)pn1;
assert(MP_PARSE_NODE_IS_ID(pns1->nodes[0]));
qstr q_base = MP_PARSE_NODE_LEAF_ARG(pn0);
qstr q_attr = MP_PARSE_NODE_LEAF_ARG(pns1->nodes[0]);
- mp_map_elem_t *elem = mp_map_lookup((mp_map_t*)&mp_constants_map, MP_OBJ_NEW_QSTR(q_base), MP_MAP_LOOKUP);
+ mp_map_elem_t *elem = mp_map_lookup((mp_map_t *)&mp_constants_map, MP_OBJ_NEW_QSTR(q_base), MP_MAP_LOOKUP);
if (elem == NULL) {
return false;
}
@@ -883,9 +890,14 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
// work out the top-level rule to use, and push it on the stack
size_t top_level_rule;
switch (input_kind) {
- case MP_PARSE_SINGLE_INPUT: top_level_rule = RULE_single_input; break;
- case MP_PARSE_EVAL_INPUT: top_level_rule = RULE_eval_input; break;
- default: top_level_rule = RULE_file_input;
+ case MP_PARSE_SINGLE_INPUT:
+ top_level_rule = RULE_single_input;
+ break;
+ case MP_PARSE_EVAL_INPUT:
+ top_level_rule = RULE_eval_input;
+ break;
+ default:
+ top_level_rule = RULE_file_input;
}
push_rule(&parser, lex->tok_line, top_level_rule, 0);
@@ -894,7 +906,7 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
bool backtrack = false;
for (;;) {
- next_rule:
+ next_rule:
if (parser.rule_stack_top == 0) {
break;
}
@@ -924,7 +936,7 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
backtrack = false;
}
for (; i < n; ++i) {
- //printf("--> inside for @L924\n");
+ // printf("--> inside for @L924\n");
uint16_t kind = rule_arg[i] & RULE_ARG_KIND_MASK;
if (kind == RULE_ARG_TOK) {
if (lex->tok_kind == (rule_arg[i] & RULE_ARG_ARG_MASK)) {
@@ -1067,7 +1079,7 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
// n=3 is: item (sep item)* [sep]
bool had_trailing_sep;
if (backtrack) {
- list_backtrack:
+ list_backtrack:
had_trailing_sep = false;
if (n == 2) {
if (i == 1) {
@@ -1169,7 +1181,7 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
) {
syntax_error:;
mp_obj_t exc;
- switch(lex->tok_kind) {
+ switch (lex->tok_kind) {
case MP_TOKEN_INDENT:
exc = mp_obj_new_exception_msg(&mp_type_IndentationError,
translate("unexpected indent"));
@@ -1178,8 +1190,8 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
exc = mp_obj_new_exception_msg(&mp_type_IndentationError,
translate("unindent does not match any outer indentation level"));
break;
-#if MICROPY_COMP_FSTRING_LITERAL
-#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
+ #if MICROPY_COMP_FSTRING_LITERAL
+ #if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
case MP_TOKEN_FSTRING_BACKSLASH:
exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
translate("f-string expression part cannot include a backslash"));
@@ -1204,7 +1216,7 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
exc = mp_obj_new_exception_msg(&mp_type_NotImplementedError,
translate("raw f-strings are not implemented"));
break;
-#else
+ #else
case MP_TOKEN_FSTRING_BACKSLASH:
case MP_TOKEN_FSTRING_COMMENT:
case MP_TOKEN_FSTRING_UNCLOSED:
@@ -1214,8 +1226,8 @@ mp_parse_tree_t mp_parse(mp_lexer_t *lex, mp_parse_input_kind_t input_kind) {
exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
translate("malformed f-string"));
break;
-#endif
-#endif
+ #endif
+ #endif
default:
exc = mp_obj_new_exception_msg(&mp_type_SyntaxError,
translate("invalid syntax"));
diff --git a/py/parse.h b/py/parse.h
index 946b41eac..1e6a5888e 100644
--- a/py/parse.h
+++ b/py/parse.h
@@ -63,7 +63,7 @@ typedef struct _mp_parse_node_struct_t {
#define MP_PARSE_NODE_IS_NULL(pn) ((pn) == MP_PARSE_NODE_NULL)
#define MP_PARSE_NODE_IS_LEAF(pn) ((pn) & 3)
#define MP_PARSE_NODE_IS_STRUCT(pn) ((pn) != MP_PARSE_NODE_NULL && ((pn) & 3) == 0)
-#define MP_PARSE_NODE_IS_STRUCT_KIND(pn, k) ((pn) != MP_PARSE_NODE_NULL && ((pn) & 3) == 0 && MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t*)(pn)) == (k))
+#define MP_PARSE_NODE_IS_STRUCT_KIND(pn, k) ((pn) != MP_PARSE_NODE_NULL && ((pn) & 3) == 0 && MP_PARSE_NODE_STRUCT_KIND((mp_parse_node_struct_t *)(pn)) == (k))
#define MP_PARSE_NODE_IS_SMALL_INT(pn) (((pn) & 0x1) == MP_PARSE_NODE_SMALL_INT)
#define MP_PARSE_NODE_IS_ID(pn) (((pn) & 0x0f) == MP_PARSE_NODE_ID)
diff --git a/py/parsenum.c b/py/parsenum.c
index a72829b20..96f05ff82 100644
--- a/py/parsenum.c
+++ b/py/parsenum.c
@@ -42,7 +42,7 @@ STATIC NORETURN void raise_exc(mp_obj_t exc, mp_lexer_t *lex) {
// if lex!=NULL then the parser called us and we need to convert the
// exception's type from ValueError to SyntaxError and add traceback info
if (lex != NULL) {
- ((mp_obj_base_t*)MP_OBJ_TO_PTR(exc))->type = &mp_type_SyntaxError;
+ ((mp_obj_base_t *)MP_OBJ_TO_PTR(exc))->type = &mp_type_SyntaxError;
mp_obj_exception_add_traceback(exc, lex->source_name, lex->tok_line, MP_QSTR_NULL);
}
nlr_raise(exc);
@@ -75,7 +75,7 @@ mp_obj_t mp_parse_num_integer(const char *restrict str_, size_t len, int base, m
}
// parse optional base prefix
- str += mp_parse_num_base((const char*)str, top - str, &base);
+ str += mp_parse_num_base((const char *)str, top - str, &base);
// string should be an integer number
mp_int_t int_val = 0;
@@ -139,30 +139,30 @@ have_ret_val:
overflow:
// reparse using long int
{
- const char *s2 = (const char*)str_val_start;
+ const char *s2 = (const char *)str_val_start;
ret_val = mp_obj_new_int_from_str_len(&s2, top - str_val_start, neg, base);
- str = (const byte*)s2;
+ str = (const byte *)s2;
goto have_ret_val;
}
-value_error: ;
+value_error:;
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_obj_t exc = mp_obj_new_exception_msg(&mp_type_ValueError,
- translate("invalid syntax for integer"));
- raise_exc(exc, lex);
+ mp_obj_t exc = mp_obj_new_exception_msg(&mp_type_ValueError,
+ translate("invalid syntax for integer"));
+ raise_exc(exc, lex);
#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_NORMAL
- mp_obj_t exc = mp_obj_new_exception_msg_varg(&mp_type_ValueError,
- translate("invalid syntax for integer with base %d"), base);
- raise_exc(exc, lex);
+ mp_obj_t exc = mp_obj_new_exception_msg_varg(&mp_type_ValueError,
+ translate("invalid syntax for integer with base %d"), base);
+ raise_exc(exc, lex);
#else
- vstr_t vstr;
- mp_print_t print;
- vstr_init_print(&vstr, 50, &print);
- mp_printf(&print, "invalid syntax for integer with base %d: ", base);
- mp_str_print_quoted(&print, str_val_start, top - str_val_start, true);
- mp_obj_t exc = mp_obj_new_exception_arg1(&mp_type_ValueError,
- mp_obj_new_str_from_vstr(&mp_type_str, &vstr));
- raise_exc(exc, lex);
+ vstr_t vstr;
+ mp_print_t print;
+ vstr_init_print(&vstr, 50, &print);
+ mp_printf(&print, "invalid syntax for integer with base %d: ", base);
+ mp_str_print_quoted(&print, str_val_start, top - str_val_start, true);
+ mp_obj_t exc = mp_obj_new_exception_arg1(&mp_type_ValueError,
+ mp_obj_new_str_from_vstr(&mp_type_str, &vstr));
+ raise_exc(exc, lex);
#endif
}
@@ -173,19 +173,19 @@ typedef enum {
} parse_dec_in_t;
mp_obj_t mp_parse_num_decimal(const char *str, size_t len, bool allow_imag, bool force_complex, mp_lexer_t *lex) {
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
// DEC_VAL_MAX only needs to be rough and is used to retain precision while not overflowing
// SMALL_NORMAL_VAL is the smallest power of 10 that is still a normal float
-#if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
+ #if MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_FLOAT
#define DEC_VAL_MAX 1e20F
#define SMALL_NORMAL_VAL (1e-37F)
#define SMALL_NORMAL_EXP (-37)
-#elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
+ #elif MICROPY_FLOAT_IMPL == MICROPY_FLOAT_IMPL_DOUBLE
#define DEC_VAL_MAX 1e200
#define SMALL_NORMAL_VAL (1e-307)
#define SMALL_NORMAL_EXP (-307)
-#endif
+ #endif
const char *top = str + len;
mp_float_t dec_val = 0;
@@ -214,7 +214,7 @@ mp_obj_t mp_parse_num_decimal(const char *str, size_t len, bool allow_imag, bool
if (str + 2 < top && (str[1] | 0x20) == 'n' && (str[2] | 0x20) == 'f') {
// inf
str += 3;
- dec_val = (mp_float_t) INFINITY;
+ dec_val = (mp_float_t)INFINITY;
if (str + 4 < top && (str[0] | 0x20) == 'i' && (str[1] | 0x20) == 'n' && (str[2] | 0x20) == 'i' && (str[3] | 0x20) == 't' && (str[4] | 0x20) == 'y') {
// infinity
str += 5;
@@ -320,17 +320,17 @@ mp_obj_t mp_parse_num_decimal(const char *str, size_t len, bool allow_imag, bool
}
// return the object
-#if MICROPY_PY_BUILTINS_COMPLEX
+ #if MICROPY_PY_BUILTINS_COMPLEX
if (imag) {
return mp_obj_new_complex(0, dec_val);
} else if (force_complex) {
return mp_obj_new_complex(dec_val, 0);
}
-#else
+ #else
if (imag || force_complex) {
raise_exc(mp_obj_new_exception_msg(&mp_type_ValueError, translate("complex values not supported")), lex);
}
-#endif
+ #endif
else {
return mp_obj_new_float(dec_val);
}
@@ -338,7 +338,7 @@ mp_obj_t mp_parse_num_decimal(const char *str, size_t len, bool allow_imag, bool
value_error:
raise_exc(mp_obj_new_exception_msg(&mp_type_ValueError, translate("invalid syntax for number")), lex);
-#else
+ #else
raise_exc(mp_obj_new_exception_msg(&mp_type_ValueError, translate("decimal numbers not supported")), lex);
-#endif
+ #endif
}
diff --git a/py/parsenumbase.c b/py/parsenumbase.c
index e4ac6d00e..0802b435f 100644
--- a/py/parsenumbase.c
+++ b/py/parsenumbase.c
@@ -31,7 +31,7 @@
// find real radix base, and strip preceding '0x', '0o' and '0b'
// puts base in *base, and returns number of bytes to skip the prefix
size_t mp_parse_num_base(const char *str, size_t len, int *base) {
- const byte *p = (const byte*)str;
+ const byte *p = (const byte *)str;
if (len <= 1) {
goto no_prefix;
}
@@ -67,5 +67,5 @@ size_t mp_parse_num_base(const char *str, size_t len, int *base) {
*base = 10;
}
}
- return p - (const byte*)str;
+ return p - (const byte *)str;
}
diff --git a/py/persistentcode.c b/py/persistentcode.c
index 9b438453a..4e352ce7a 100644
--- a/py/persistentcode.c
+++ b/py/persistentcode.c
@@ -116,7 +116,7 @@ STATIC int read_byte(mp_reader_t *reader) {
STATIC void read_bytes(mp_reader_t *reader, byte *buf, size_t len) {
while (len-- > 0) {
- mp_uint_t b =reader->readbyte(reader->data);
+ mp_uint_t b = reader->readbyte(reader->data);
if (b == MP_READER_EOF) {
raise_corrupt_mpy();
}
@@ -142,7 +142,7 @@ STATIC size_t read_uint(mp_reader_t *reader) {
STATIC qstr load_qstr(mp_reader_t *reader) {
size_t len = read_uint(reader);
char str[len];
- read_bytes(reader, (byte*)str, len);
+ read_bytes(reader, (byte *)str, len);
qstr qst = qstr_from_strn(str, len);
return qst;
}
@@ -155,7 +155,7 @@ STATIC mp_obj_t load_obj(mp_reader_t *reader) {
size_t len = read_uint(reader);
vstr_t vstr;
vstr_init_len(&vstr, len);
- read_bytes(reader, (byte*)vstr.buf, len);
+ read_bytes(reader, (byte *)vstr.buf, len);
if (obj_type == 's' || obj_type == 'b') {
return mp_obj_new_str_from_vstr(obj_type == 's' ? &mp_type_str : &mp_type_bytes, &vstr);
} else if (obj_type == 'i') {
@@ -196,9 +196,11 @@ STATIC mp_raw_code_t *load_raw_code(mp_reader_t *reader) {
// load qstrs and link global qstr ids into bytecode
qstr simple_name = load_qstr(reader);
qstr source_file = load_qstr(reader);
- ((byte*)ip2)[0] = simple_name; ((byte*)ip2)[1] = simple_name >> 8;
- ((byte*)ip2)[2] = source_file; ((byte*)ip2)[3] = source_file >> 8;
- load_bytecode_qstrs(reader, (byte*)ip, bytecode + bc_len);
+ ((byte *)ip2)[0] = simple_name;
+ ((byte *)ip2)[1] = simple_name >> 8;
+ ((byte *)ip2)[2] = source_file;
+ ((byte *)ip2)[3] = source_file >> 8;
+ load_bytecode_qstrs(reader, (byte *)ip, bytecode + bc_len);
// load constant table
size_t n_obj = read_uint(reader);
@@ -262,7 +264,7 @@ mp_raw_code_t *mp_raw_code_load_file(const char *filename) {
#include "py/objstr.h"
STATIC void mp_print_bytes(mp_print_t *print, const byte *data, size_t len) {
- print->print_strn(print->data, (const char*)data, len);
+ print->print_strn(print->data, (const char *)data, len);
}
#define BYTES_FOR_INT ((BYTES_PER_WORD * 8 + 6) / 7)
@@ -274,7 +276,7 @@ STATIC void mp_print_uint(mp_print_t *print, size_t n) {
for (; n != 0; n >>= 7) {
*--p = 0x80 | (n & 0x7f);
}
- print->print_strn(print->data, (char*)p, buf + sizeof(buf) - p);
+ print->print_strn(print->data, (char *)p, buf + sizeof(buf) - p);
}
STATIC void save_qstr(mp_print_t *print, qstr qst) {
@@ -296,7 +298,7 @@ STATIC void save_obj(mp_print_t *print, mp_obj_t o) {
const char *str = mp_obj_str_get_data(o, &len);
mp_print_bytes(print, &obj_type, 1);
mp_print_uint(print, len);
- mp_print_bytes(print, (const byte*)str, len);
+ mp_print_bytes(print, (const byte *)str, len);
} else if (MP_OBJ_TO_PTR(o) == &mp_const_ellipsis_obj) {
byte obj_type = 'e';
mp_print_bytes(print, &obj_type, 1);
@@ -320,7 +322,7 @@ STATIC void save_obj(mp_print_t *print, mp_obj_t o) {
mp_obj_print_helper(&pr, o, PRINT_REPR);
mp_print_bytes(print, &obj_type, 1);
mp_print_uint(print, vstr.len);
- mp_print_bytes(print, (const byte*)vstr.buf, vstr.len);
+ mp_print_bytes(print, (const byte *)vstr.buf, vstr.len);
vstr_clear(&vstr);
}
}
@@ -369,7 +371,7 @@ STATIC void save_raw_code(mp_print_t *print, mp_raw_code_t *rc) {
save_obj(print, (mp_obj_t)*const_table++);
}
for (uint i = 0; i < rc->data.u_byte.n_raw_code; ++i) {
- save_raw_code(print, (mp_raw_code_t*)(uintptr_t)*const_table++);
+ save_raw_code(print, (mp_raw_code_t *)(uintptr_t)*const_table++);
}
}
@@ -380,11 +382,11 @@ void mp_raw_code_save(mp_raw_code_t *rc, mp_print_t *print) {
// byte feature flags
// byte number of bits in a small int
byte header[4] = {'M', MPY_VERSION, MPY_FEATURE_FLAGS_DYNAMIC,
- #if MICROPY_DYNAMIC_COMPILER
- mp_dynamic_compiler.small_int_bits,
- #else
- mp_small_int_bits(),
- #endif
+ #if MICROPY_DYNAMIC_COMPILER
+ mp_dynamic_compiler.small_int_bits,
+ #else
+ mp_small_int_bits(),
+ #endif
};
mp_print_bytes(print, header, sizeof(header));
@@ -408,7 +410,7 @@ STATIC void fd_print_strn(void *env, const char *str, size_t len) {
void mp_raw_code_save_file(mp_raw_code_t *rc, const char *filename) {
int fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, 0644);
- mp_print_t fd_print = {(void*)(intptr_t)fd, fd_print_strn};
+ mp_print_t fd_print = {(void *)(intptr_t)fd, fd_print_strn};
mp_raw_code_save(rc, &fd_print);
close(fd);
}
diff --git a/py/proto.c b/py/proto.c
index e4da157f0..ad9684f3c 100644
--- a/py/proto.c
+++ b/py/proto.c
@@ -31,8 +31,10 @@
#ifndef MICROPY_UNSAFE_PROTO
const void *mp_proto_get(uint16_t name, mp_const_obj_t obj) {
mp_obj_type_t *type = mp_obj_get_type(obj);
- if (!type->protocol) return NULL;
- uint16_t proto_name = *(const uint16_t*) type->protocol;
+ if (!type->protocol) {
+ return NULL;
+ }
+ uint16_t proto_name = *(const uint16_t *)type->protocol;
if (proto_name == name) {
return type->protocol;
}
diff --git a/py/proto.h b/py/proto.h
index fadf1f882..2b2439eae 100644
--- a/py/proto.h
+++ b/py/proto.h
@@ -30,7 +30,9 @@
#ifdef MICROPY_UNSAFE_PROTO
#define MP_PROTOCOL_HEAD /* NOTHING */
#define MP_PROTO_IMPLEMENT(name) /* NOTHING */
-static inline void *mp_proto_get(uint16_t name, mp_const_obj_type_t obj) { return mp_obj_get_type(obj)->protocol; }
+static inline void *mp_proto_get(uint16_t name, mp_const_obj_type_t obj) {
+ return mp_obj_get_type(obj)->protocol;
+}
#else
#define MP_PROTOCOL_HEAD \
uint16_t name; // The name of this protocol, a qstr
diff --git a/py/pystack.c b/py/pystack.c
index 0def75b10..c48437aa7 100644
--- a/py/pystack.c
+++ b/py/pystack.c
@@ -49,7 +49,7 @@ void *mp_pystack_alloc(size_t n_bytes) {
void *ptr = MP_STATE_THREAD(pystack_cur);
MP_STATE_THREAD(pystack_cur) += n_bytes;
#if MP_PYSTACK_DEBUG
- *(size_t*)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN) = n_bytes;
+ *(size_t *)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN) = n_bytes;
#endif
return ptr;
}
diff --git a/py/pystack.h b/py/pystack.h
index 3fbcdeeb8..66ff2a695 100644
--- a/py/pystack.h
+++ b/py/pystack.h
@@ -41,21 +41,21 @@ void *mp_pystack_alloc(size_t n_bytes);
// pointer to the block that was allocated first and it and all subsequently
// allocated blocks will be freed.
static inline void mp_pystack_free(void *ptr) {
- assert((uint8_t*)ptr >= MP_STATE_THREAD(pystack_start));
- assert((uint8_t*)ptr <= MP_STATE_THREAD(pystack_cur));
+ assert((uint8_t *)ptr >= MP_STATE_THREAD(pystack_start));
+ assert((uint8_t *)ptr <= MP_STATE_THREAD(pystack_cur));
#if MP_PYSTACK_DEBUG
- size_t n_bytes_to_free = MP_STATE_THREAD(pystack_cur) - (uint8_t*)ptr;
- size_t n_bytes = *(size_t*)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN);
+ size_t n_bytes_to_free = MP_STATE_THREAD(pystack_cur) - (uint8_t *)ptr;
+ size_t n_bytes = *(size_t *)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN);
while (n_bytes < n_bytes_to_free) {
- n_bytes += *(size_t*)(MP_STATE_THREAD(pystack_cur) - n_bytes - MICROPY_PYSTACK_ALIGN);
+ n_bytes += *(size_t *)(MP_STATE_THREAD(pystack_cur) - n_bytes - MICROPY_PYSTACK_ALIGN);
}
if (n_bytes != n_bytes_to_free) {
mp_printf(&mp_plat_print, "mp_pystack_free() failed: %u != %u\n", (uint)n_bytes_to_free,
- (uint)*(size_t*)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN));
+ (uint)*(size_t *)(MP_STATE_THREAD(pystack_cur) - MICROPY_PYSTACK_ALIGN));
assert(0);
}
#endif
- MP_STATE_THREAD(pystack_cur) = (uint8_t*)ptr;
+ MP_STATE_THREAD(pystack_cur) = (uint8_t *)ptr;
}
static inline void mp_pystack_realloc(void *ptr, size_t n_bytes) {
diff --git a/py/qstr.c b/py/qstr.c
index c9ba298fb..2ae65379c 100755..100644
--- a/py/qstr.c
+++ b/py/qstr.c
@@ -104,13 +104,13 @@ const qstr_pool_t mp_qstr_const_pool = {
10, // set so that the first dynamically allocated pool is twice this size; must be <= the len (just below)
MP_QSTRnumber_of, // corresponds to number of strings in array just below
{
-#ifndef NO_QSTR
+ #ifndef NO_QSTR
#define QDEF(id, str) str,
-#define TRANSLATION(id, length, compressed...)
-#include "genhdr/qstrdefs.generated.h"
+#define TRANSLATION(id, length, compressed ...)
+ #include "genhdr/qstrdefs.generated.h"
#undef TRANSLATION
#undef QDEF
-#endif
+ #endif
},
};
@@ -122,7 +122,7 @@ extern const qstr_pool_t MICROPY_QSTR_EXTRA_POOL;
#endif
void qstr_init(void) {
- MP_STATE_VM(last_pool) = (qstr_pool_t*)&CONST_POOL; // we won't modify the const_pool since it has no allocated room left
+ MP_STATE_VM(last_pool) = (qstr_pool_t *)&CONST_POOL; // we won't modify the const_pool since it has no allocated room left
MP_STATE_VM(qstr_last_chunk) = NULL;
#if MICROPY_PY_THREAD
@@ -151,7 +151,7 @@ STATIC qstr qstr_add(const byte *q_ptr) {
if (new_pool_length > MICROPY_QSTR_POOL_MAX_ENTRIES) {
new_pool_length = MICROPY_QSTR_POOL_MAX_ENTRIES;
}
- qstr_pool_t *pool = m_new_ll_obj_var_maybe(qstr_pool_t, const char*, new_pool_length);
+ qstr_pool_t *pool = m_new_ll_obj_var_maybe(qstr_pool_t, const char *, new_pool_length);
if (pool == NULL) {
QSTR_EXIT();
m_malloc_fail(new_pool_length);
@@ -173,7 +173,7 @@ STATIC qstr qstr_add(const byte *q_ptr) {
qstr qstr_find_strn(const char *str, size_t str_len) {
// work out hash of str
- mp_uint_t str_hash = qstr_compute_hash((const byte*)str, str_len);
+ mp_uint_t str_hash = qstr_compute_hash((const byte *)str, str_len);
// search pools for the data
for (qstr_pool_t *pool = MP_STATE_VM(last_pool); pool != NULL; pool = pool->prev) {
@@ -240,7 +240,7 @@ qstr qstr_from_strn(const char *str, size_t len) {
MP_STATE_VM(qstr_last_used) += n_bytes;
// store the interned strings' data
- mp_uint_t hash = qstr_compute_hash((const byte*)str, len);
+ mp_uint_t hash = qstr_compute_hash((const byte *)str, len);
Q_SET_HASH(q_ptr, hash);
Q_SET_LENGTH(q_ptr, len);
memcpy(q_ptr + MICROPY_QSTR_BYTES_IN_HASH + MICROPY_QSTR_BYTES_IN_LEN, str, len);
@@ -262,7 +262,7 @@ size_t qstr_len(qstr q) {
const char *qstr_str(qstr q) {
const byte *qd = find_qstr(q);
- return (const char*)Q_GET_DATA(qd);
+ return (const char *)Q_GET_DATA(qd);
}
const byte *qstr_data(qstr q, size_t *len) {
diff --git a/py/qstr.h b/py/qstr.h
index 070a3cd4f..c86e74324 100644
--- a/py/qstr.h
+++ b/py/qstr.h
@@ -37,11 +37,11 @@
// first entry in enum will be MP_QSTR_NULL=0, which indicates invalid/no qstr
enum {
-#ifndef NO_QSTR
+ #ifndef NO_QSTR
#define QENUM(id) id,
-#include "genhdr/qstrdefs.enum.h"
+ #include "genhdr/qstrdefs.enum.h"
#undef QENUM
-#endif
+ #endif
MP_QSTRnumber_of, // no underscore so it can't clash with any of the above
};
diff --git a/py/qstrdefs.h b/py/qstrdefs.h
index b68267197..04ee03d73 100644
--- a/py/qstrdefs.h
+++ b/py/qstrdefs.h
@@ -24,6 +24,8 @@
* THE SOFTWARE.
*/
+// *FORMAT-OFF*
+
#include "py/mpconfig.h"
// All the qstr definitions in this file are available as constants.
diff --git a/py/reader.c b/py/reader.c
index 1b0bbf094..dfd5daf63 100644
--- a/py/reader.c
+++ b/py/reader.c
@@ -39,7 +39,7 @@ typedef struct _mp_reader_mem_t {
} mp_reader_mem_t;
STATIC mp_uint_t mp_reader_mem_readbyte(void *data) {
- mp_reader_mem_t *reader = (mp_reader_mem_t*)data;
+ mp_reader_mem_t *reader = (mp_reader_mem_t *)data;
if (reader->cur < reader->end) {
return *reader->cur++;
} else {
@@ -48,9 +48,9 @@ STATIC mp_uint_t mp_reader_mem_readbyte(void *data) {
}
STATIC void mp_reader_mem_close(void *data) {
- mp_reader_mem_t *reader = (mp_reader_mem_t*)data;
+ mp_reader_mem_t *reader = (mp_reader_mem_t *)data;
if (reader->free_len > 0) {
- m_del(char, (char*)reader->beg, reader->free_len);
+ m_del(char, (char *)reader->beg, reader->free_len);
}
m_del_obj(mp_reader_mem_t, reader);
}
@@ -81,7 +81,7 @@ typedef struct _mp_reader_posix_t {
} mp_reader_posix_t;
STATIC mp_uint_t mp_reader_posix_readbyte(void *data) {
- mp_reader_posix_t *reader = (mp_reader_posix_t*)data;
+ mp_reader_posix_t *reader = (mp_reader_posix_t *)data;
if (reader->pos >= reader->len) {
if (reader->len == 0) {
return MP_READER_EOF;
@@ -99,7 +99,7 @@ STATIC mp_uint_t mp_reader_posix_readbyte(void *data) {
}
STATIC void mp_reader_posix_close(void *data) {
- mp_reader_posix_t *reader = (mp_reader_posix_t*)data;
+ mp_reader_posix_t *reader = (mp_reader_posix_t *)data;
if (reader->close_fd) {
close(reader->fd);
}
diff --git a/py/reload.c b/py/reload.c
index f9f8a590a..9f2000469 100644
--- a/py/reload.c
+++ b/py/reload.c
@@ -1,4 +1,4 @@
- /*
+/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
@@ -23,10 +23,10 @@
void mp_raise_reload_exception(void) {
MP_STATE_VM(mp_pending_exception) = MP_OBJ_FROM_PTR(&MP_STATE_VM(mp_reload_exception));
-#if MICROPY_ENABLE_SCHEDULER
+ #if MICROPY_ENABLE_SCHEDULER
if (MP_STATE_VM(sched_state) == MP_SCHED_IDLE) {
MP_STATE_VM(sched_state) = MP_SCHED_PENDING;
}
-#endif
+ #endif
}
diff --git a/py/reload.h b/py/reload.h
index 3e8928a32..8e68ea325 100644
--- a/py/reload.h
+++ b/py/reload.h
@@ -1,4 +1,4 @@
- /*
+/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
@@ -23,4 +23,4 @@
void mp_raise_reload_exception(void);
-#endif //CIRCUITPYTHON_RELOAD_H
+#endif // CIRCUITPYTHON_RELOAD_H
diff --git a/py/repl.c b/py/repl.c
index 785c0fb53..3ef140152 100644
--- a/py/repl.c
+++ b/py/repl.c
@@ -50,7 +50,7 @@ bool mp_repl_continue_with_input(const char *input) {
// check if input starts with a certain keyword
bool starts_with_compound_keyword =
- input[0] == '@'
+ input[0] == '@'
|| str_startswith_word(input, "if")
|| str_startswith_word(input, "while")
|| str_startswith_word(input, "for")
@@ -61,7 +61,7 @@ bool mp_repl_continue_with_input(const char *input) {
#if MICROPY_PY_ASYNC_AWAIT
|| str_startswith_word(input, "async")
#endif
- ;
+ ;
// check for unmatched open bracket, quote or escape quote
#define Q_NONE (0)
@@ -95,13 +95,26 @@ bool mp_repl_continue_with_input(const char *input) {
}
} else if (in_quote == Q_NONE) {
switch (*i) {
- case '(': n_paren += 1; break;
- case ')': n_paren -= 1; break;
- case '[': n_brack += 1; break;
- case ']': n_brack -= 1; break;
- case '{': n_brace += 1; break;
- case '}': n_brace -= 1; break;
- default: break;
+ case '(':
+ n_paren += 1;
+ break;
+ case ')':
+ n_paren -= 1;
+ break;
+ case '[':
+ n_brack += 1;
+ break;
+ case ']':
+ n_brack -= 1;
+ break;
+ case '{':
+ n_brace += 1;
+ break;
+ case '}':
+ n_brace -= 1;
+ break;
+ default:
+ break;
}
}
}
@@ -183,7 +196,7 @@ size_t mp_repl_autocomplete(const char *str, size_t len, const mp_print_t *print
qstr q_first = 0, q_last = 0;
for (qstr q = MP_QSTR_ + 1; q < nqstr; ++q) {
size_t d_len;
- const char *d_str = (const char*)qstr_data(q, &d_len);
+ const char *d_str = (const char *)qstr_data(q, &d_len);
if (s_len <= d_len && strncmp(s_start, d_str, s_len) == 0) {
mp_load_method_protected(obj, q, dest, true);
if (dest[0] != MP_OBJ_NULL) {
@@ -246,7 +259,7 @@ size_t mp_repl_autocomplete(const char *str, size_t len, const mp_print_t *print
int line_len = MAX_LINE_LEN; // force a newline for first word
for (qstr q = q_first; q <= q_last; ++q) {
size_t d_len;
- const char *d_str = (const char*)qstr_data(q, &d_len);
+ const char *d_str = (const char *)qstr_data(q, &d_len);
if (s_len <= d_len && strncmp(s_start, d_str, s_len) == 0) {
mp_load_method_protected(obj, q, dest, true);
if (dest[0] != MP_OBJ_NULL) {
diff --git a/py/ringbuf.c b/py/ringbuf.c
index c19f1d44b..f4be5ca3f 100644
--- a/py/ringbuf.c
+++ b/py/ringbuf.c
@@ -32,7 +32,7 @@
// handles empty and full statuses.
bool ringbuf_alloc(ringbuf_t *r, size_t capacity, bool long_lived) {
r->buf = gc_alloc(capacity + 1, false, long_lived);
- r->size = capacity + 1;
+ r->size = capacity + 1;
r->iget = r->iput = 0;
return r->buf != NULL;
}
@@ -89,10 +89,9 @@ size_t ringbuf_num_filled(ringbuf_t *r) {
// If the ring buffer fills up, not all bytes will be written.
// Returns how many bytes were successfully written.
-size_t ringbuf_put_n(ringbuf_t* r, uint8_t* buf, size_t bufsize)
-{
- for(size_t i=0; i < bufsize; i++) {
- if ( ringbuf_put(r, buf[i]) < 0 ) {
+size_t ringbuf_put_n(ringbuf_t *r, uint8_t *buf, size_t bufsize) {
+ for (size_t i = 0; i < bufsize; i++) {
+ if (ringbuf_put(r, buf[i]) < 0) {
// If ringbuf is full, give up and return how many bytes
// we wrote so far.
return i;
@@ -102,9 +101,8 @@ size_t ringbuf_put_n(ringbuf_t* r, uint8_t* buf, size_t bufsize)
}
// Returns how many bytes were fetched.
-size_t ringbuf_get_n(ringbuf_t* r, uint8_t* buf, size_t bufsize)
-{
- for(size_t i=0; i < bufsize; i++) {
+size_t ringbuf_get_n(ringbuf_t *r, uint8_t *buf, size_t bufsize) {
+ for (size_t i = 0; i < bufsize; i++) {
int b = ringbuf_get(r);
if (b < 0) {
return i;
diff --git a/py/ringbuf.h b/py/ringbuf.h
index 476bd428f..88d88d86e 100644
--- a/py/ringbuf.h
+++ b/py/ringbuf.h
@@ -52,7 +52,7 @@ int ringbuf_put(ringbuf_t *r, uint8_t v);
void ringbuf_clear(ringbuf_t *r);
size_t ringbuf_num_empty(ringbuf_t *r);
size_t ringbuf_num_filled(ringbuf_t *r);
-size_t ringbuf_put_n(ringbuf_t* r, uint8_t* buf, size_t bufsize);
-size_t ringbuf_get_n(ringbuf_t* r, uint8_t* buf, size_t bufsize);
+size_t ringbuf_put_n(ringbuf_t *r, uint8_t *buf, size_t bufsize);
+size_t ringbuf_get_n(ringbuf_t *r, uint8_t *buf, size_t bufsize);
#endif // MICROPY_INCLUDED_PY_RINGBUF_H
diff --git a/py/runtime.c b/py/runtime.c
index a3acb954a..28ecddd78 100644
--- a/py/runtime.c
+++ b/py/runtime.c
@@ -60,7 +60,7 @@
const mp_obj_module_t mp_module___main__ = {
.base = { &mp_type_module },
- .globals = (mp_obj_dict_t*)&MP_STATE_VM(dict_main),
+ .globals = (mp_obj_dict_t *)&MP_STATE_VM(dict_main),
};
void mp_init(void) {
@@ -73,9 +73,9 @@ void mp_init(void) {
MP_STATE_VM(sched_sp) = 0;
#endif
-#if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
+ #if MICROPY_ENABLE_EMERGENCY_EXCEPTION_BUF
mp_init_emergency_exception_buf();
-#endif
+ #endif
#if MICROPY_KBD_EXCEPTION
// initialise the exception object for raising KeyboardInterrupt
@@ -83,19 +83,19 @@ void mp_init(void) {
MP_STATE_VM(mp_kbd_exception).traceback_alloc = 0;
MP_STATE_VM(mp_kbd_exception).traceback_len = 0;
MP_STATE_VM(mp_kbd_exception).traceback_data = NULL;
- MP_STATE_VM(mp_kbd_exception).args = (mp_obj_tuple_t*)&mp_const_empty_tuple_obj;
+ MP_STATE_VM(mp_kbd_exception).args = (mp_obj_tuple_t *)&mp_const_empty_tuple_obj;
#endif
MP_STATE_VM(mp_reload_exception).base.type = &mp_type_ReloadException;
MP_STATE_VM(mp_reload_exception).traceback_alloc = 0;
MP_STATE_VM(mp_reload_exception).traceback_len = 0;
MP_STATE_VM(mp_reload_exception).traceback_data = NULL;
- MP_STATE_VM(mp_reload_exception).args = (mp_obj_tuple_t*)&mp_const_empty_tuple_obj;
+ MP_STATE_VM(mp_reload_exception).args = (mp_obj_tuple_t *)&mp_const_empty_tuple_obj;
// call port specific initialization if any
-#ifdef MICROPY_PORT_INIT_FUNC
+ #ifdef MICROPY_PORT_INIT_FUNC
MICROPY_PORT_INIT_FUNC;
-#endif
+ #endif
#if MICROPY_ENABLE_COMPILER
// optimization disabled by default
@@ -128,7 +128,7 @@ void mp_init(void) {
#ifdef MICROPY_FSUSERMOUNT
// zero out the pointers to the user-mounted devices
memset(MP_STATE_VM(fs_user_mount) + MICROPY_FATFS_NUM_PERSISTENT, 0,
- sizeof(MP_STATE_VM(fs_user_mount)) - MICROPY_FATFS_NUM_PERSISTENT);
+ sizeof(MP_STATE_VM(fs_user_mount)) - MICROPY_FATFS_NUM_PERSISTENT);
#endif
#if MICROPY_PY_THREAD_GIL
@@ -139,13 +139,13 @@ void mp_init(void) {
}
void mp_deinit(void) {
- //mp_obj_dict_free(&dict_main);
- //mp_map_deinit(&MP_STATE_VM(mp_loaded_modules_map));
+ // mp_obj_dict_free(&dict_main);
+ // mp_map_deinit(&MP_STATE_VM(mp_loaded_modules_map));
// call port specific deinitialization if any
-#ifdef MICROPY_PORT_INIT_FUNC
+ #ifdef MICROPY_PORT_INIT_FUNC
MICROPY_PORT_DEINIT_FUNC;
-#endif
+ #endif
}
mp_obj_t mp_load_name(qstr qst) {
@@ -175,13 +175,13 @@ mp_obj_t mp_load_global(qstr qst) {
}
}
#endif
- elem = mp_map_lookup((mp_map_t*)&mp_module_builtins_globals.map, MP_OBJ_NEW_QSTR(qst), MP_MAP_LOOKUP);
+ elem = mp_map_lookup((mp_map_t *)&mp_module_builtins_globals.map, MP_OBJ_NEW_QSTR(qst), MP_MAP_LOOKUP);
if (elem == NULL) {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_msg(&mp_type_NameError, translate("name not defined"));
+ mp_raise_msg(&mp_type_NameError, translate("name not defined"));
#else
- nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_NameError,
- translate("name '%q' is not defined"), qst));
+ nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_NameError,
+ translate("name '%q' is not defined"), qst));
#endif
}
}
@@ -276,11 +276,11 @@ mp_obj_t mp_unary_op(mp_unary_op_t op, mp_obj_t arg) {
}
}
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("unsupported type for operator"));
+ mp_raise_TypeError(translate("unsupported type for operator"));
#else
- mp_raise_TypeError_varg(
- translate("unsupported type for %q: '%q'"),
- mp_unary_op_method_name[op], mp_obj_get_type_qstr(arg));
+ mp_raise_TypeError_varg(
+ translate("unsupported type for %q: '%q'"),
+ mp_unary_op_method_name[op], mp_obj_get_type_qstr(arg));
#endif
}
}
@@ -359,11 +359,17 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
// << checked explicitly
switch (op) {
case MP_BINARY_OP_OR:
- case MP_BINARY_OP_INPLACE_OR: lhs_val |= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_OR:
+ lhs_val |= rhs_val;
+ break;
case MP_BINARY_OP_XOR:
- case MP_BINARY_OP_INPLACE_XOR: lhs_val ^= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_XOR:
+ lhs_val ^= rhs_val;
+ break;
case MP_BINARY_OP_AND:
- case MP_BINARY_OP_INPLACE_AND: lhs_val &= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_AND:
+ lhs_val &= rhs_val;
+ break;
case MP_BINARY_OP_LSHIFT:
case MP_BINARY_OP_INPLACE_LSHIFT: {
if (rhs_val < 0) {
@@ -395,9 +401,13 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
}
break;
case MP_BINARY_OP_ADD:
- case MP_BINARY_OP_INPLACE_ADD: lhs_val += rhs_val; break;
+ case MP_BINARY_OP_INPLACE_ADD:
+ lhs_val += rhs_val;
+ break;
case MP_BINARY_OP_SUBTRACT:
- case MP_BINARY_OP_INPLACE_SUBTRACT: lhs_val -= rhs_val; break;
+ case MP_BINARY_OP_INPLACE_SUBTRACT:
+ lhs_val -= rhs_val;
+ break;
case MP_BINARY_OP_MULTIPLY:
case MP_BINARY_OP_INPLACE_MULTIPLY: {
@@ -498,10 +508,14 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
return MP_OBJ_FROM_PTR(tuple);
}
- case MP_BINARY_OP_LESS: return mp_obj_new_bool(lhs_val < rhs_val);
- case MP_BINARY_OP_MORE: return mp_obj_new_bool(lhs_val > rhs_val);
- case MP_BINARY_OP_LESS_EQUAL: return mp_obj_new_bool(lhs_val <= rhs_val);
- case MP_BINARY_OP_MORE_EQUAL: return mp_obj_new_bool(lhs_val >= rhs_val);
+ case MP_BINARY_OP_LESS:
+ return mp_obj_new_bool(lhs_val < rhs_val);
+ case MP_BINARY_OP_MORE:
+ return mp_obj_new_bool(lhs_val > rhs_val);
+ case MP_BINARY_OP_LESS_EQUAL:
+ return mp_obj_new_bool(lhs_val <= rhs_val);
+ case MP_BINARY_OP_MORE_EQUAL:
+ return mp_obj_new_bool(lhs_val >= rhs_val);
default:
goto unsupported_op;
@@ -512,7 +526,7 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
} else {
return mp_obj_new_int(lhs_val);
}
-#if MICROPY_PY_BUILTINS_FLOAT
+ #if MICROPY_PY_BUILTINS_FLOAT
} else if (mp_obj_is_float(rhs)) {
mp_obj_t res = mp_obj_float_binary_op(op, lhs_val, rhs);
if (res == MP_OBJ_NULL) {
@@ -520,7 +534,7 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
} else {
return res;
}
-#if MICROPY_PY_BUILTINS_COMPLEX
+ #if MICROPY_PY_BUILTINS_COMPLEX
} else if (MP_OBJ_IS_TYPE(rhs, &mp_type_complex)) {
mp_obj_t res = mp_obj_complex_binary_op(op, lhs_val, 0, rhs);
if (res == MP_OBJ_NULL) {
@@ -528,8 +542,8 @@ mp_obj_t PLACE_IN_ITCM(mp_binary_op)(mp_binary_op_t op, mp_obj_t lhs, mp_obj_t r
} else {
return res;
}
-#endif
-#endif
+ #endif
+ #endif
}
}
@@ -552,7 +566,7 @@ generic_binary_op:
}
}
-#if MICROPY_PY_REVERSE_SPECIAL_METHODS
+ #if MICROPY_PY_REVERSE_SPECIAL_METHODS
if (op >= MP_BINARY_OP_OR && op <= MP_BINARY_OP_REVERSE_POWER) {
mp_obj_t t = rhs;
rhs = lhs;
@@ -565,7 +579,7 @@ generic_binary_op:
// Convert __rop__ back to __op__ for error message
op -= MP_BINARY_OP_REVERSE_OR - MP_BINARY_OP_OR;
}
-#endif
+ #endif
if (op == MP_BINARY_OP_CONTAINS) {
// If type didn't support containment then explicitly walk the iterator.
@@ -583,11 +597,11 @@ generic_binary_op:
unsupported_op:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("unsupported type for operator"));
+ mp_raise_TypeError(translate("unsupported type for operator"));
#else
- mp_raise_TypeError_varg(
- translate("unsupported types for %q: '%q', '%q'"),
- mp_binary_op_method_name[op], mp_obj_get_type_qstr(lhs), mp_obj_get_type_qstr(rhs));
+ mp_raise_TypeError_varg(
+ translate("unsupported types for %q: '%q', '%q'"),
+ mp_binary_op_method_name[op], mp_obj_get_type_qstr(lhs), mp_obj_get_type_qstr(rhs));
#endif
zero_division:
@@ -625,9 +639,9 @@ mp_obj_t mp_call_function_n_kw(mp_obj_t fun_in, size_t n_args, size_t n_kw, cons
}
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object not callable"));
+ mp_raise_TypeError(translate("object not callable"));
#else
- mp_raise_TypeError_varg(translate("'%q' object is not callable"), mp_obj_get_type_qstr(fun_in));
+ mp_raise_TypeError_varg(translate("'%q' object is not callable"), mp_obj_get_type_qstr(fun_in));
#endif
}
@@ -853,17 +867,17 @@ void mp_unpack_sequence(mp_obj_t seq_in, size_t num, mp_obj_t *items) {
too_short:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_ValueError(translate("wrong number of values to unpack"));
+ mp_raise_ValueError(translate("wrong number of values to unpack"));
#else
- mp_raise_ValueError_varg(translate("need more than %d values to unpack"),
- (int)seq_len);
+ mp_raise_ValueError_varg(translate("need more than %d values to unpack"),
+ (int)seq_len);
#endif
too_long:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_ValueError(translate("wrong number of values to unpack"));
+ mp_raise_ValueError(translate("wrong number of values to unpack"));
#else
- mp_raise_ValueError_varg(translate("too many values to unpack (expected %d)"),
- (int)num);
+ mp_raise_ValueError_varg(translate("too many values to unpack (expected %d)"),
+ (int)num);
#endif
}
@@ -917,10 +931,10 @@ void mp_unpack_ex(mp_obj_t seq_in, size_t num_in, mp_obj_t *items) {
too_short:
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_ValueError(translate("wrong number of values to unpack"));
+ mp_raise_ValueError(translate("wrong number of values to unpack"));
#else
- mp_raise_ValueError_varg(translate("need more than %d values to unpack"),
- (int)seq_len);
+ mp_raise_ValueError_varg(translate("need more than %d values to unpack"),
+ (int)seq_len);
#endif
}
@@ -989,7 +1003,7 @@ STATIC mp_obj_t mp_obj_new_checked_fun(const mp_obj_type_t *type, mp_obj_t fun)
void mp_convert_member_lookup(mp_obj_t self, const mp_obj_type_t *type, mp_obj_t member, mp_obj_t *dest) {
if (MP_OBJ_IS_TYPE(member, &mp_type_staticmethod)) {
// return just the function
- dest[0] = ((mp_obj_static_class_method_t*)MP_OBJ_TO_PTR(member))->fun;
+ dest[0] = ((mp_obj_static_class_method_t *)MP_OBJ_TO_PTR(member))->fun;
} else if (MP_OBJ_IS_TYPE(member, &mp_type_classmethod)) {
// return a bound method, with self being the type of this object
// this type should be the type of the original instance, not the base
@@ -997,18 +1011,18 @@ void mp_convert_member_lookup(mp_obj_t self, const mp_obj_type_t *type, mp_obj_t
if (self != MP_OBJ_NULL) {
type = mp_obj_get_type(self);
}
- dest[0] = ((mp_obj_static_class_method_t*)MP_OBJ_TO_PTR(member))->fun;
+ dest[0] = ((mp_obj_static_class_method_t *)MP_OBJ_TO_PTR(member))->fun;
dest[1] = MP_OBJ_FROM_PTR(type);
} else if (MP_OBJ_IS_TYPE(member, &mp_type_type)) {
// Don't try to bind types (even though they're callable)
dest[0] = member;
} else if (MP_OBJ_IS_FUN(member)
- || (MP_OBJ_IS_OBJ(member)
- && (((mp_obj_base_t*)MP_OBJ_TO_PTR(member))->type->name == MP_QSTR_closure
- || ((mp_obj_base_t*)MP_OBJ_TO_PTR(member))->type->name == MP_QSTR_generator))) {
+ || (MP_OBJ_IS_OBJ(member)
+ && (((mp_obj_base_t *)MP_OBJ_TO_PTR(member))->type->name == MP_QSTR_closure
+ || ((mp_obj_base_t *)MP_OBJ_TO_PTR(member))->type->name == MP_QSTR_generator))) {
// only functions, closures and generators objects can be bound to self
#if MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG
- const mp_obj_type_t *m_type = ((mp_obj_base_t*)MP_OBJ_TO_PTR(member))->type;
+ const mp_obj_type_t *m_type = ((mp_obj_base_t *)MP_OBJ_TO_PTR(member))->type;
if (self == MP_OBJ_NULL
&& (m_type == &mp_type_fun_builtin_0
|| m_type == &mp_type_fun_builtin_1
@@ -1025,7 +1039,7 @@ void mp_convert_member_lookup(mp_obj_t self, const mp_obj_type_t *type, mp_obj_t
dest[0] = member;
dest[1] = self;
}
- #if MICROPY_PY_BUILTINS_PROPERTY
+ #if MICROPY_PY_BUILTINS_PROPERTY
// If self is MP_OBJ_NULL, we looking at the class itself, not an instance.
} else if (MP_OBJ_IS_TYPE(member, &mp_type_property) && mp_obj_is_native_type(type) && self != MP_OBJ_NULL) {
// object member is a property; delegate the load to the property
@@ -1041,7 +1055,7 @@ void mp_convert_member_lookup(mp_obj_t self, const mp_obj_type_t *type, mp_obj_t
} else {
dest[0] = mp_call_function_n_kw(proxy[0], 1, 0, &self);
}
- #endif
+ #endif
} else {
// class member is a value, so just return that value
dest[0] = member;
@@ -1061,11 +1075,11 @@ void mp_load_method_maybe(mp_obj_t obj, qstr attr, mp_obj_t *dest) {
// look for built-in names
if (0) {
-#if MICROPY_CPYTHON_COMPAT
+ #if MICROPY_CPYTHON_COMPAT
} else if (attr == MP_QSTR___class__) {
// a.__class__ is equivalent to type(a)
dest[0] = MP_OBJ_FROM_PTR(type);
-#endif
+ #endif
} else if (attr == MP_QSTR___next__ && type->iternext != NULL) {
dest[0] = MP_OBJ_FROM_PTR(&mp_builtin_next_obj);
@@ -1095,22 +1109,22 @@ void mp_load_method(mp_obj_t base, qstr attr, mp_obj_t *dest) {
if (dest[0] == MP_OBJ_NULL) {
// no attribute/method called attr
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_AttributeError(translate("no such attribute"));
+ mp_raise_AttributeError(translate("no such attribute"));
#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
- // following CPython, we give a more detailed error message for type objects
- if (MP_OBJ_IS_TYPE(base, &mp_type_type)) {
- nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
- translate("type object '%q' has no attribute '%q'"),
- ((mp_obj_type_t*)MP_OBJ_TO_PTR(base))->name, attr));
- } else {
- nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
- translate("'%q' object has no attribute '%q'"),
- mp_obj_get_type_qstr(base), attr));
- }
- #else
+ // following CPython, we give a more detailed error message for type objects
+ if (MP_OBJ_IS_TYPE(base, &mp_type_type)) {
+ nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
+ translate("type object '%q' has no attribute '%q'"),
+ ((mp_obj_type_t *)MP_OBJ_TO_PTR(base))->name, attr));
+ } else {
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
translate("'%q' object has no attribute '%q'"),
mp_obj_get_type_qstr(base), attr));
+ }
+ #else
+ nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
+ translate("'%q' object has no attribute '%q'"),
+ mp_obj_get_type_qstr(base), attr));
#endif
}
}
@@ -1123,7 +1137,7 @@ void mp_load_method_protected(mp_obj_t obj, qstr attr, mp_obj_t *dest, bool catc
nlr_pop();
} else {
if (!catch_all_exc
- && !mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t*)nlr.ret_val)->type),
+ && !mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t *)nlr.ret_val)->type),
MP_OBJ_FROM_PTR(&mp_type_AttributeError))) {
// Re-raise the exception
nlr_raise(MP_OBJ_FROM_PTR(nlr.ret_val));
@@ -1173,11 +1187,11 @@ void mp_store_attr(mp_obj_t base, qstr attr, mp_obj_t value) {
#endif
}
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_AttributeError(translate("no such attribute"));
+ mp_raise_AttributeError(translate("no such attribute"));
#else
- nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
- translate("'%q' object cannot assign attribute '%q'"),
- mp_obj_get_type_qstr(base), attr));
+ nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_AttributeError,
+ translate("'%q' object cannot assign attribute '%q'"),
+ mp_obj_get_type_qstr(base), attr));
#endif
}
@@ -1214,10 +1228,10 @@ mp_obj_t mp_getiter(mp_obj_t o_in, mp_obj_iter_buf_t *iter_buf) {
// object not iterable
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object not iterable"));
+ mp_raise_TypeError(translate("object not iterable"));
#else
- mp_raise_TypeError_varg(
- translate("'%q' object is not iterable"), mp_obj_get_type_qstr(o_in));
+ mp_raise_TypeError_varg(
+ translate("'%q' object is not iterable"), mp_obj_get_type_qstr(o_in));
#endif
}
@@ -1236,10 +1250,10 @@ mp_obj_t mp_iternext_allow_raise(mp_obj_t o_in) {
return mp_call_method_n_kw(0, 0, dest);
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object not an iterator"));
+ mp_raise_TypeError(translate("object not an iterator"));
#else
- mp_raise_TypeError_varg(translate("'%q' object is not an iterator"),
- mp_obj_get_type_qstr(o_in));
+ mp_raise_TypeError_varg(translate("'%q' object is not an iterator"),
+ mp_obj_get_type_qstr(o_in));
#endif
}
}
@@ -1264,7 +1278,7 @@ mp_obj_t mp_iternext(mp_obj_t o_in) {
nlr_pop();
return ret;
} else {
- if (mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t*)nlr.ret_val)->type), MP_OBJ_FROM_PTR(&mp_type_StopIteration))) {
+ if (mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t *)nlr.ret_val)->type), MP_OBJ_FROM_PTR(&mp_type_StopIteration))) {
return MP_OBJ_STOP_ITERATION;
} else {
nlr_jump(nlr.ret_val);
@@ -1272,10 +1286,10 @@ mp_obj_t mp_iternext(mp_obj_t o_in) {
}
} else {
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE
- mp_raise_TypeError(translate("object not an iterator"));
+ mp_raise_TypeError(translate("object not an iterator"));
#else
- mp_raise_TypeError_varg(translate("'%q' object is not an iterator"),
- mp_obj_get_type_qstr(o_in));
+ mp_raise_TypeError_varg(translate("'%q' object is not an iterator"),
+ mp_obj_get_type_qstr(o_in));
#endif
}
}
@@ -1405,7 +1419,7 @@ mp_obj_t mp_import_from(mp_obj_t module, qstr name) {
if (dest[1] != MP_OBJ_NULL) {
// Hopefully we can't import bound method from an object
-import_error:
+ import_error:
mp_raise_msg_varg(&mp_type_ImportError, translate("cannot import name %q"), name);
}
diff --git a/py/runtime.h b/py/runtime.h
index 5e8fda35c..74307d87c 100644
--- a/py/runtime.h
+++ b/py/runtime.h
@@ -72,7 +72,9 @@ void mp_handle_pending_tail(mp_uint_t atomic_state);
#if MICROPY_ENABLE_SCHEDULER
void mp_sched_lock(void);
void mp_sched_unlock(void);
-static inline unsigned int mp_sched_num_pending(void) { return MP_STATE_VM(sched_sp); }
+static inline unsigned int mp_sched_num_pending(void) {
+ return MP_STATE_VM(sched_sp);
+}
bool mp_sched_schedule(mp_obj_t function, mp_obj_t arg);
#endif
@@ -86,10 +88,18 @@ void mp_arg_parse_all_kw_array(size_t n_pos, size_t n_kw, const mp_obj_t *args,
NORETURN void mp_arg_error_terse_mismatch(void);
NORETURN void mp_arg_error_unimpl_kw(void);
-static inline mp_obj_dict_t *PLACE_IN_ITCM(mp_locals_get)(void) { return MP_STATE_THREAD(dict_locals); }
-static inline void PLACE_IN_ITCM(mp_locals_set)(mp_obj_dict_t *d) { MP_STATE_THREAD(dict_locals) = d; }
-static inline mp_obj_dict_t *PLACE_IN_ITCM(mp_globals_get)(void) { return MP_STATE_THREAD(dict_globals); }
-static inline void PLACE_IN_ITCM(mp_globals_set)(mp_obj_dict_t *d) { MP_STATE_THREAD(dict_globals) = d; }
+static inline mp_obj_dict_t *PLACE_IN_ITCM(mp_locals_get)(void) {
+ return MP_STATE_THREAD(dict_locals);
+}
+static inline void PLACE_IN_ITCM(mp_locals_set)(mp_obj_dict_t * d) {
+ MP_STATE_THREAD(dict_locals) = d;
+}
+static inline mp_obj_dict_t *PLACE_IN_ITCM(mp_globals_get)(void) {
+ return MP_STATE_THREAD(dict_globals);
+}
+static inline void PLACE_IN_ITCM(mp_globals_set)(mp_obj_dict_t * d) {
+ MP_STATE_THREAD(dict_globals) = d;
+}
mp_obj_t mp_load_name(qstr qst);
mp_obj_t mp_load_global(qstr qst);
diff --git a/py/runtime0.h b/py/runtime0.h
index fb35c8a9f..566cec566 100644
--- a/py/runtime0.h
+++ b/py/runtime0.h
@@ -112,7 +112,7 @@ typedef enum {
MP_BINARY_OP_NUM_BYTECODE,
// MP_BINARY_OP_REVERSE_* must follow immediately after MP_BINARY_OP_*
-#if MICROPY_PY_REVERSE_SPECIAL_METHODS
+ #if MICROPY_PY_REVERSE_SPECIAL_METHODS
MP_BINARY_OP_REVERSE_OR = MP_BINARY_OP_NUM_BYTECODE,
MP_BINARY_OP_REVERSE_XOR,
MP_BINARY_OP_REVERSE_AND,
@@ -125,13 +125,13 @@ typedef enum {
MP_BINARY_OP_REVERSE_TRUE_DIVIDE,
MP_BINARY_OP_REVERSE_MODULO,
MP_BINARY_OP_REVERSE_POWER,
-#endif
+ #endif
// This is not emitted by the compiler but is supported by the runtime
MP_BINARY_OP_DIVMOD
- #if !MICROPY_PY_REVERSE_SPECIAL_METHODS
+ #if !MICROPY_PY_REVERSE_SPECIAL_METHODS
= MP_BINARY_OP_NUM_BYTECODE
- #endif
+ #endif
,
// The runtime will convert MP_BINARY_OP_IN to this operator with swapped args.
@@ -166,10 +166,10 @@ typedef enum {
MP_F_LIST_APPEND,
MP_F_BUILD_MAP,
MP_F_STORE_MAP,
-#if MICROPY_PY_BUILTINS_SET
+ #if MICROPY_PY_BUILTINS_SET
MP_F_STORE_SET,
MP_F_BUILD_SET,
-#endif
+ #endif
MP_F_MAKE_FUNCTION_FROM_RAW_CODE,
MP_F_NATIVE_CALL_FUNCTION_N_KW,
MP_F_CALL_METHOD_N_KW,
@@ -182,9 +182,9 @@ typedef enum {
MP_F_IMPORT_NAME,
MP_F_IMPORT_FROM,
MP_F_IMPORT_ALL,
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
MP_F_NEW_SLICE,
-#endif
+ #endif
MP_F_UNPACK_SEQUENCE,
MP_F_UNPACK_EX,
MP_F_DELETE_NAME,
diff --git a/py/scope.c b/py/scope.c
index 98f39d4c6..4adf09afc 100644
--- a/py/scope.c
+++ b/py/scope.c
@@ -47,7 +47,7 @@ scope_t *scope_new(scope_kind_t kind, mp_parse_node_t pn, qstr source_file, mp_u
scope->source_file = source_file;
if (kind == SCOPE_FUNCTION || kind == SCOPE_CLASS) {
assert(MP_PARSE_NODE_IS_STRUCT(pn));
- scope->simple_name = MP_PARSE_NODE_LEAF_ARG(((mp_parse_node_struct_t*)pn)->nodes[0]);
+ scope->simple_name = MP_PARSE_NODE_LEAF_ARG(((mp_parse_node_struct_t *)pn)->nodes[0]);
} else {
scope->simple_name = scope_simple_name_table[kind];
}
diff --git a/py/sequence.c b/py/sequence.c
index e6421fde5..2fcd84017 100644
--- a/py/sequence.c
+++ b/py/sequence.c
@@ -54,7 +54,7 @@ void mp_seq_multiply(const void *items, size_t item_sz, size_t len, size_t times
for (size_t i = 0; i < times; i++) {
size_t copy_sz = item_sz * len;
memcpy(dest, items, copy_sz);
- dest = (char*)dest + copy_sz;
+ dest = (char *)dest + copy_sz;
}
}
@@ -169,7 +169,7 @@ bool mp_seq_cmp_bytes(mp_uint_t op, const byte *data1, size_t len1, const byte *
// Let's deal only with > & >=
if (op == MP_BINARY_OP_LESS || op == MP_BINARY_OP_LESS_EQUAL) {
- SWAP(const byte*, data1, data2);
+ SWAP(const byte *, data1, data2);
SWAP(size_t, len1, len2);
if (op == MP_BINARY_OP_LESS) {
op = MP_BINARY_OP_MORE;
@@ -236,7 +236,7 @@ bool mp_seq_cmp_objs(mp_uint_t op, const mp_obj_t *items1, size_t len1, const mp
}
// Otherwise, application of relation op gives the answer
- return (mp_binary_op(op, items1[i], items2[i]) == mp_const_true);
+ return mp_binary_op(op, items1[i], items2[i]) == mp_const_true;
}
// If we had tie in the last element...
@@ -281,9 +281,9 @@ mp_obj_t mp_seq_index_obj(const mp_obj_t *items, size_t len, size_t n_args, cons
mp_obj_t mp_seq_count_obj(const mp_obj_t *items, size_t len, mp_obj_t value) {
size_t count = 0;
for (size_t i = 0; i < len; i++) {
- if (mp_obj_equal(items[i], value)) {
- count++;
- }
+ if (mp_obj_equal(items[i], value)) {
+ count++;
+ }
}
// Common sense says this cannot overflow small int
diff --git a/py/showbc.c b/py/showbc.c
index 5a8e660fc..a94b2b3a5 100644
--- a/py/showbc.c
+++ b/py/showbc.c
@@ -36,10 +36,10 @@
#define printf(...) mp_printf(&mp_plat_print, __VA_ARGS__)
#define DECODE_UINT { \
- unum = 0; \
- do { \
- unum = (unum << 7) + (*ip & 0x7f); \
- } while ((*ip++ & 0x80) != 0); \
+ unum = 0; \
+ do { \
+ unum = (unum << 7) + (*ip & 0x7f); \
+ } while ((*ip++ & 0x80) != 0); \
}
#define DECODE_ULABEL do { unum = (ip[0] | (ip[1] << 8)); ip += 2; } while (0)
#define DECODE_SLABEL do { unum = (ip[0] | (ip[1] << 8)) - 0x8000; ip += 2; } while (0)
@@ -59,20 +59,20 @@
#else
#define DECODE_QSTR { \
- qst = 0; \
- do { \
- qst = (qst << 7) + (*ip & 0x7f); \
- } while ((*ip++ & 0x80) != 0); \
+ qst = 0; \
+ do { \
+ qst = (qst << 7) + (*ip & 0x7f); \
+ } while ((*ip++ & 0x80) != 0); \
}
#define DECODE_PTR do { \
- ip = (byte*)MP_ALIGN(ip, sizeof(void*)); \
- unum = (uintptr_t)*(void**)ip; \
- ip += sizeof(void*); \
+ ip = (byte *)MP_ALIGN(ip, sizeof(void *)); \
+ unum = (uintptr_t)*(void **)ip; \
+ ip += sizeof(void *); \
} while (0)
#define DECODE_OBJ do { \
- ip = (byte*)MP_ALIGN(ip, sizeof(mp_obj_t)); \
- unum = (mp_uint_t)*(mp_obj_t*)ip; \
- ip += sizeof(mp_obj_t); \
+ ip = (byte *)MP_ALIGN(ip, sizeof(mp_obj_t)); \
+ unum = (mp_uint_t)*(mp_obj_t *)ip; \
+ ip += sizeof(mp_obj_t); \
} while (0)
#endif
@@ -143,7 +143,7 @@ void mp_bytecode_print(const void *descr, const byte *ip, mp_uint_t len, const m
mp_int_t bc = bytecode_start - ip;
mp_uint_t source_line = 1;
printf(" bc=" INT_FMT " line=" UINT_FMT "\n", bc, source_line);
- for (const byte* ci = code_info; *ci;) {
+ for (const byte *ci = code_info; *ci;) {
if ((ci[0] & 0x80) == 0) {
// 0b0LLBBBBB encoding
bc += ci[0] & 0x1f;
@@ -435,12 +435,12 @@ const byte *mp_bytecode_print_str(const byte *ip) {
printf("BUILD_SET " UINT_FMT, unum);
break;
-#if MICROPY_PY_BUILTINS_SLICE
+ #if MICROPY_PY_BUILTINS_SLICE
case MP_BC_BUILD_SLICE:
DECODE_UINT;
printf("BUILD_SLICE " UINT_FMT, unum);
break;
-#endif
+ #endif
case MP_BC_STORE_COMP:
DECODE_UINT;
@@ -459,25 +459,25 @@ const byte *mp_bytecode_print_str(const byte *ip) {
case MP_BC_MAKE_FUNCTION:
DECODE_PTR;
- printf("MAKE_FUNCTION %p", (void*)(uintptr_t)unum);
+ printf("MAKE_FUNCTION %p", (void *)(uintptr_t)unum);
break;
case MP_BC_MAKE_FUNCTION_DEFARGS:
DECODE_PTR;
- printf("MAKE_FUNCTION_DEFARGS %p", (void*)(uintptr_t)unum);
+ printf("MAKE_FUNCTION_DEFARGS %p", (void *)(uintptr_t)unum);
break;
case MP_BC_MAKE_CLOSURE: {
DECODE_PTR;
mp_uint_t n_closed_over = *ip++;
- printf("MAKE_CLOSURE %p " UINT_FMT, (void*)(uintptr_t)unum, n_closed_over);
+ printf("MAKE_CLOSURE %p " UINT_FMT, (void *)(uintptr_t)unum, n_closed_over);
break;
}
case MP_BC_MAKE_CLOSURE_DEFARGS: {
DECODE_PTR;
mp_uint_t n_closed_over = *ip++;
- printf("MAKE_CLOSURE_DEFARGS %p " UINT_FMT, (void*)(uintptr_t)unum, n_closed_over);
+ printf("MAKE_CLOSURE_DEFARGS %p " UINT_FMT, (void *)(uintptr_t)unum, n_closed_over);
break;
}
diff --git a/py/stackctrl.c b/py/stackctrl.c
index 26fc065b7..d699d6da6 100644
--- a/py/stackctrl.c
+++ b/py/stackctrl.c
@@ -31,7 +31,7 @@ void mp_stack_ctrl_init(void) {
// Force routine to not be inlined. Better guarantee than MP_NOINLINE for -flto.
__asm volatile ("");
volatile int stack_dummy;
- MP_STATE_THREAD(stack_top) = (char*)&stack_dummy;
+ MP_STATE_THREAD(stack_top) = (char *)&stack_dummy;
}
void mp_stack_set_top(void *top) {
@@ -43,7 +43,7 @@ mp_uint_t mp_stack_usage(void) {
// Force routine to not be inlined. Better guarantee than MP_NOINLINE for -flto.
__asm volatile ("");
volatile int stack_dummy;
- return MP_STATE_THREAD(stack_top) - (char*)&stack_dummy;
+ return MP_STATE_THREAD(stack_top) - (char *)&stack_dummy;
}
#if MICROPY_STACK_CHECK
@@ -66,7 +66,7 @@ void mp_stack_check(void) {
const char MP_MAX_STACK_USAGE_SENTINEL_BYTE = 0xEE;
// Record absolute bottom (logical limit) of stack.
-void mp_stack_set_bottom(void* stack_bottom) {
+void mp_stack_set_bottom(void *stack_bottom) {
MP_STATE_THREAD(stack_bottom) = stack_bottom;
}
@@ -77,8 +77,8 @@ void mp_stack_set_bottom(void* stack_bottom) {
//
// The stack_dummy approach used elsewhere in this file is not safe in
// all cases. That value may be below the actual top of the stack.
-static void* approx_stack_pointer(void){
- __asm volatile ("");
+static void *approx_stack_pointer(void) {
+ __asm volatile ("");
return __builtin_frame_address(0);
}
@@ -89,10 +89,10 @@ void mp_stack_fill_with_sentinel(void) {
// Start filling stack just below the current stack frame.
// Continue until we've hit the bottom of the stack (lowest address,
// logical "ceiling" of stack).
- char* p = (char *) approx_stack_pointer() - 1;
+ char *p = (char *)approx_stack_pointer() - 1;
- while(p >= MP_STATE_THREAD(stack_bottom)) {
- *p-- = MP_MAX_STACK_USAGE_SENTINEL_BYTE;
+ while (p >= MP_STATE_THREAD(stack_bottom)) {
+ *p-- = MP_MAX_STACK_USAGE_SENTINEL_BYTE;
}
}
diff --git a/py/stackctrl.h b/py/stackctrl.h
index 18cd81e75..6b003f6c2 100644
--- a/py/stackctrl.h
+++ b/py/stackctrl.h
@@ -48,7 +48,7 @@ void mp_stack_check(void);
#if MICROPY_MAX_STACK_USAGE
const char MP_MAX_STACK_USAGE_SENTINEL_BYTE;
-void mp_stack_set_bottom(void* stack_bottom);
+void mp_stack_set_bottom(void *stack_bottom);
void mp_stack_fill_with_sentinel(void);
#endif
diff --git a/py/stream.c b/py/stream.c
index 0813c1d7f..159d32ffb 100644
--- a/py/stream.c
+++ b/py/stream.c
@@ -235,7 +235,7 @@ MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_read1_obj, 1, 2, stream_read1);
mp_obj_t mp_stream_write(mp_obj_t self_in, const void *buf, size_t len, byte flags) {
int error;
- mp_uint_t out_sz = mp_stream_rw(self_in, (void*)buf, len, &error, flags);
+ mp_uint_t out_sz = mp_stream_rw(self_in, (void *)buf, len, &error, flags);
if (error != 0) {
if (mp_is_nonblocking_error(error)) {
// http://docs.python.org/3/library/io.html#io.RawIOBase.write
@@ -272,7 +272,7 @@ STATIC mp_obj_t stream_write_method(size_t n_args, const mp_obj_t *args) {
}
}
bufinfo.len -= off;
- return mp_stream_write(args[0], (byte*)bufinfo.buf + off, MIN(bufinfo.len, max_len), MP_STREAM_RW_WRITE);
+ return mp_stream_write(args[0], (byte *)bufinfo.buf + off, MIN(bufinfo.len, max_len), MP_STREAM_RW_WRITE);
}
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_write_obj, 2, 4, stream_write_method);
@@ -401,7 +401,7 @@ STATIC mp_obj_t stream_unbuffered_readline(size_t n_args, const mp_obj_t *args)
mp_raise_OSError(error);
}
if (out_sz == 0) {
-done:
+ done:
// Back out previously added byte
// Consider, what's better - read a char and get OutOfMemory (so read
// char is lost), or allocate first as we do.
@@ -534,7 +534,7 @@ MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_ioctl_obj, 2, 3, stream_ioctl);
int mp_stream_errno;
ssize_t mp_stream_posix_write(mp_obj_t stream, const void *buf, size_t len) {
- mp_obj_base_t* o = (mp_obj_base_t*)MP_OBJ_TO_PTR(stream);
+ mp_obj_base_t *o = (mp_obj_base_t *)MP_OBJ_TO_PTR(stream);
const mp_stream_p_t *stream_p = mp_get_stream(o);
mp_uint_t out_sz = stream_p->write(stream, buf, len, &mp_stream_errno);
if (out_sz == MP_STREAM_ERROR) {
@@ -545,7 +545,7 @@ ssize_t mp_stream_posix_write(mp_obj_t stream, const void *buf, size_t len) {
}
ssize_t mp_stream_posix_read(mp_obj_t stream, void *buf, size_t len) {
- mp_obj_base_t* o = (mp_obj_base_t*)MP_OBJ_TO_PTR(stream);
+ mp_obj_base_t *o = (mp_obj_base_t *)MP_OBJ_TO_PTR(stream);
const mp_stream_p_t *stream_p = mp_get_stream(o);
mp_uint_t out_sz = stream_p->read(stream, buf, len, &mp_stream_errno);
if (out_sz == MP_STREAM_ERROR) {
@@ -556,7 +556,7 @@ ssize_t mp_stream_posix_read(mp_obj_t stream, void *buf, size_t len) {
}
off_t mp_stream_posix_lseek(mp_obj_t stream, off_t offset, int whence) {
- const mp_obj_base_t* o = (mp_obj_base_t*)MP_OBJ_TO_PTR(stream);
+ const mp_obj_base_t *o = (mp_obj_base_t *)MP_OBJ_TO_PTR(stream);
const mp_stream_p_t *stream_p = mp_get_stream(o);
struct mp_stream_seek_t seek_s;
seek_s.offset = offset;
@@ -569,7 +569,7 @@ off_t mp_stream_posix_lseek(mp_obj_t stream, off_t offset, int whence) {
}
int mp_stream_posix_fsync(mp_obj_t stream) {
- mp_obj_base_t* o = (mp_obj_base_t*)MP_OBJ_TO_PTR(stream);
+ mp_obj_base_t *o = (mp_obj_base_t *)MP_OBJ_TO_PTR(stream);
const mp_stream_p_t *stream_p = mp_get_stream(o);
mp_uint_t res = stream_p->ioctl(stream, MP_STREAM_FLUSH, 0, &mp_stream_errno);
if (res == MP_STREAM_ERROR) {
diff --git a/py/stream.h b/py/stream.h
index c05dcfc50..be0b4ace7 100644
--- a/py/stream.h
+++ b/py/stream.h
@@ -72,9 +72,9 @@ typedef struct _mp_stream_p_t {
mp_uint_t (*write)(mp_obj_t obj, const void *buf, mp_uint_t size, int *errcode);
mp_uint_t (*ioctl)(mp_obj_t obj, mp_uint_t request, uintptr_t arg, int *errcode);
mp_uint_t is_text : 1; // default is bytes, set this for text stream
- bool pyserial_readinto_compatibility: 1; // Disallow size parameter in readinto()
- bool pyserial_read_compatibility: 1; // Disallow omitting read(size) size parameter
- bool pyserial_dont_return_none_compatibility: 1; // Don't return None for read() or readinto()
+ bool pyserial_readinto_compatibility : 1; // Disallow size parameter in readinto()
+ bool pyserial_read_compatibility : 1; // Disallow omitting read(size) size parameter
+ bool pyserial_dont_return_none_compatibility : 1; // Don't return None for read() or readinto()
} mp_stream_p_t;
MP_DECLARE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_read_obj);
@@ -113,7 +113,7 @@ mp_obj_t mp_stream_write(mp_obj_t self_in, const void *buf, size_t len, byte fla
#define MP_STREAM_RW_WRITE 2
#define MP_STREAM_RW_ONCE 1
mp_uint_t mp_stream_rw(mp_obj_t stream, void *buf, mp_uint_t size, int *errcode, byte flags);
-#define mp_stream_write_exactly(stream, buf, size, err) mp_stream_rw(stream, (byte*)buf, size, err, MP_STREAM_RW_WRITE)
+#define mp_stream_write_exactly(stream, buf, size, err) mp_stream_rw(stream, (byte *)buf, size, err, MP_STREAM_RW_WRITE)
#define mp_stream_read_exactly(stream, buf, size, err) mp_stream_rw(stream, buf, size, err, MP_STREAM_RW_READ)
void mp_stream_write_adaptor(void *self, const char *buf, size_t len);
diff --git a/py/unicode.c b/py/unicode.c
index a17dbf969..17f05861c 100644
--- a/py/unicode.c
+++ b/py/unicode.c
@@ -71,7 +71,9 @@ STATIC const uint8_t attr[] = {
unichar utf8_get_char(const byte *s) {
unichar ord = *s++;
- if (!UTF8_IS_NONASCII(ord)) return ord;
+ if (!UTF8_IS_NONASCII(ord)) {
+ return ord;
+ }
ord &= 0x7F;
for (unichar mask = 0x40; ord & mask; mask >>= 1) {
ord &= ~mask;
diff --git a/py/vm.c b/py/vm.c
index 890b5f26f..21a9528b2 100644
--- a/py/vm.c
+++ b/py/vm.c
@@ -65,7 +65,7 @@
ip += 2;
#define DECODE_PTR \
DECODE_UINT; \
- void *ptr = (void*)(uintptr_t)code_state->fun_bc->const_table[unum]
+ void *ptr = (void *)(uintptr_t)code_state->fun_bc->const_table[unum]
#define DECODE_OBJ \
DECODE_UINT; \
mp_obj_t obj = (mp_obj_t)code_state->fun_bc->const_table[unum]
@@ -77,12 +77,12 @@
qst = (qst << 7) + (*ip & 0x7f); \
} while ((*ip++ & 0x80) != 0)
#define DECODE_PTR \
- ip = (byte*)MP_ALIGN(ip, sizeof(void*)); \
- void *ptr = *(void**)ip; \
- ip += sizeof(void*)
+ ip = (byte *)MP_ALIGN(ip, sizeof(void *)); \
+ void *ptr = *(void **)ip; \
+ ip += sizeof(void *)
#define DECODE_OBJ \
- ip = (byte*)MP_ALIGN(ip, sizeof(mp_obj_t)); \
- mp_obj_t obj = *(mp_obj_t*)ip; \
+ ip = (byte *)MP_ALIGN(ip, sizeof(mp_obj_t)); \
+ mp_obj_t obj = *(mp_obj_t *)ip; \
ip += sizeof(mp_obj_t)
#endif
@@ -99,12 +99,12 @@
#endif
#define PUSH_EXC_BLOCK(with_or_finally) do { \
- DECODE_ULABEL; /* except labels are always forward */ \
- ++exc_sp; \
- exc_sp->handler = ip + ulab; \
- exc_sp->val_sp = MP_TAGPTR_MAKE(sp, ((with_or_finally) << 1) | currently_in_except_block); \
- exc_sp->prev_exc = NULL; \
- currently_in_except_block = 0; /* in a try block now */ \
+ DECODE_ULABEL; /* except labels are always forward */ \
+ ++exc_sp; \
+ exc_sp->handler = ip + ulab; \
+ exc_sp->val_sp = MP_TAGPTR_MAKE(sp, ((with_or_finally) << 1) | currently_in_except_block); \
+ exc_sp->prev_exc = NULL; \
+ currently_in_except_block = 0; /* in a try block now */ \
} while (0)
#define POP_EXC_BLOCK() \
@@ -118,41 +118,41 @@
// MP_VM_RETURN_NORMAL, sp valid, return value in *sp
// MP_VM_RETURN_YIELD, ip, sp valid, yielded value in *sp
// MP_VM_RETURN_EXCEPTION, exception in fastn[0]
-mp_vm_return_kind_t PLACE_IN_ITCM(mp_execute_bytecode)(mp_code_state_t *code_state, volatile mp_obj_t inject_exc) {
+mp_vm_return_kind_t PLACE_IN_ITCM(mp_execute_bytecode)(mp_code_state_t * code_state, volatile mp_obj_t inject_exc) {
#define SELECTIVE_EXC_IP (0)
-#if SELECTIVE_EXC_IP
+ #if SELECTIVE_EXC_IP
#define MARK_EXC_IP_SELECTIVE() { code_state->ip = ip; } /* stores ip 1 byte past last opcode */
#define MARK_EXC_IP_GLOBAL()
-#else
+ #else
#define MARK_EXC_IP_SELECTIVE()
#define MARK_EXC_IP_GLOBAL() { code_state->ip = ip; } /* stores ip pointing to last opcode */
-#endif
-#if MICROPY_OPT_COMPUTED_GOTO
+ #endif
+ #if MICROPY_OPT_COMPUTED_GOTO
#include "py/vmentrytable.h"
-#if MICROPY_OPT_COMPUTED_GOTO_SAVE_SPACE
- #define ONE_TRUE_DISPATCH() one_true_dispatch: do { \
+ #if MICROPY_OPT_COMPUTED_GOTO_SAVE_SPACE
+ #define ONE_TRUE_DISPATCH() one_true_dispatch : do { \
TRACE(ip); \
MARK_EXC_IP_GLOBAL(); \
- goto *(void*)((char*)&&entry_MP_BC_LOAD_CONST_FALSE + entry_table[*ip++]); \
- } while (0)
- #define DISPATCH() do { goto one_true_dispatch; } while(0)
-#else
+ goto *(void *)((char *) && entry_MP_BC_LOAD_CONST_FALSE + entry_table[*ip++]); \
+} while (0)
+ #define DISPATCH() do { goto one_true_dispatch; } while (0)
+ #else
#define DISPATCH() do { \
TRACE(ip); \
MARK_EXC_IP_GLOBAL(); \
goto *entry_table[*ip++]; \
- } while (0)
+} while (0)
#define ONE_TRUE_DISPATCH() DISPATCH()
-#endif
+ #endif
#define DISPATCH_WITH_PEND_EXC_CHECK() goto pending_exception_check
#define ENTRY(op) entry_##op
#define ENTRY_DEFAULT entry_default
-#else
+ #else
#define DISPATCH() break
#define DISPATCH_WITH_PEND_EXC_CHECK() goto pending_exception_check
#define ENTRY(op) case op
#define ENTRY_DEFAULT default
-#endif
+ #endif
// nlr_raise needs to be implemented as a goto, so that the C compiler's flow analyser
// sees that it's possible for us to jump from the dispatch loop to the exception
@@ -160,16 +160,17 @@ mp_vm_return_kind_t PLACE_IN_ITCM(mp_execute_bytecode)(mp_code_state_t *code_sta
// loop and the exception handler, leading to very obscure bugs.
#define RAISE(o) do { nlr_pop(); nlr.ret_val = MP_OBJ_TO_PTR(o); goto exception_handler; } while (0)
-#if MICROPY_STACKLESS
-run_code_state: ;
-#endif
+ #if MICROPY_STACKLESS
+ run_code_state:
+ ;
+ #endif
// Pointers which are constant for particular invocation of mp_execute_bytecode()
mp_obj_t * /*const*/ fastn;
mp_exc_stack_t * /*const*/ exc_stack;
{
size_t n_state = mp_decode_uint_value(code_state->fun_bc->bytecode);
fastn = &code_state->state[n_state - 1];
- exc_stack = (mp_exc_stack_t*)(code_state->state + n_state);
+ exc_stack = (mp_exc_stack_t *)(code_state->state + n_state);
}
// variables that are visible to the exception handler (declared volatile)
@@ -185,7 +186,7 @@ run_code_state: ;
// outer exception handling loop
for (;;) {
nlr_buf_t nlr;
-outer_dispatch_loop:
+ outer_dispatch_loop:
if (nlr_push(&nlr) == 0) {
// local variables that are not visible to the exception handler
const byte *ip = code_state->ip;
@@ -207,28 +208,28 @@ outer_dispatch_loop:
// loop to execute byte code
for (;;) {
-dispatch_loop:
-#if MICROPY_OPT_COMPUTED_GOTO
+ dispatch_loop:
+ #if MICROPY_OPT_COMPUTED_GOTO
ONE_TRUE_DISPATCH();
-#else
+ #else
TRACE(ip);
MARK_EXC_IP_GLOBAL();
switch (*ip++) {
-#endif
+ #endif
- ENTRY(MP_BC_LOAD_CONST_FALSE):
+ ENTRY(MP_BC_LOAD_CONST_FALSE) :
PUSH(mp_const_false);
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_LOAD_CONST_NONE):
+ ENTRY(MP_BC_LOAD_CONST_NONE) :
PUSH(mp_const_none);
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_LOAD_CONST_TRUE):
+ ENTRY(MP_BC_LOAD_CONST_TRUE) :
PUSH(mp_const_true);
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_LOAD_CONST_SMALL_INT): {
+ ENTRY(MP_BC_LOAD_CONST_SMALL_INT) : {
mp_int_t num = 0;
if ((ip[0] & 0x40) != 0) {
// Number is negative
@@ -241,28 +242,28 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_LOAD_CONST_STRING): {
+ ENTRY(MP_BC_LOAD_CONST_STRING) : {
DECODE_QSTR;
PUSH(MP_OBJ_NEW_QSTR(qst));
DISPATCH();
}
- ENTRY(MP_BC_LOAD_CONST_OBJ): {
+ ENTRY(MP_BC_LOAD_CONST_OBJ) : {
DECODE_OBJ;
PUSH(obj);
DISPATCH();
}
- ENTRY(MP_BC_LOAD_NULL):
+ ENTRY(MP_BC_LOAD_NULL) :
PUSH(MP_OBJ_NULL);
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_LOAD_FAST_N): {
+ ENTRY(MP_BC_LOAD_FAST_N) : {
DECODE_UINT;
obj_shared = fastn[-unum];
- load_check:
+ load_check:
if (obj_shared == MP_OBJ_NULL) {
- local_name_error: {
+ local_name_error: {
MARK_EXC_IP_SELECTIVE();
mp_obj_t obj = mp_obj_new_exception_msg(&mp_type_NameError, translate("local variable referenced before assignment"));
RAISE(obj);
@@ -272,21 +273,21 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_LOAD_DEREF): {
+ ENTRY(MP_BC_LOAD_DEREF) : {
DECODE_UINT;
obj_shared = mp_obj_cell_get(fastn[-unum]);
goto load_check;
}
#if !MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE
- ENTRY(MP_BC_LOAD_NAME): {
+ ENTRY(MP_BC_LOAD_NAME) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
PUSH(mp_load_name(qst));
DISPATCH();
}
#else
- ENTRY(MP_BC_LOAD_NAME): {
+ ENTRY(MP_BC_LOAD_NAME) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t key = MP_OBJ_NEW_QSTR(qst);
@@ -296,7 +297,7 @@ dispatch_loop:
} else {
mp_map_elem_t *elem = mp_map_lookup(&mp_locals_get()->map, MP_OBJ_NEW_QSTR(qst), MP_MAP_LOOKUP);
if (elem != NULL) {
- *(byte*)ip = (elem - &mp_locals_get()->map.table[0]) & 0xff;
+ *(byte *)ip = (elem - &mp_locals_get()->map.table[0]) & 0xff;
PUSH(elem->value);
} else {
PUSH(mp_load_name(MP_OBJ_QSTR_VALUE(key)));
@@ -308,14 +309,14 @@ dispatch_loop:
#endif
#if !MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE
- ENTRY(MP_BC_LOAD_GLOBAL): {
+ ENTRY(MP_BC_LOAD_GLOBAL) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
PUSH(mp_load_global(qst));
DISPATCH();
}
#else
- ENTRY(MP_BC_LOAD_GLOBAL): {
+ ENTRY(MP_BC_LOAD_GLOBAL) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t key = MP_OBJ_NEW_QSTR(qst);
@@ -325,7 +326,7 @@ dispatch_loop:
} else {
mp_map_elem_t *elem = mp_map_lookup(&mp_globals_get()->map, MP_OBJ_NEW_QSTR(qst), MP_MAP_LOOKUP);
if (elem != NULL) {
- *(byte*)ip = (elem - &mp_globals_get()->map.table[0]) & 0xff;
+ *(byte *)ip = (elem - &mp_globals_get()->map.table[0]) & 0xff;
PUSH(elem->value);
} else {
PUSH(mp_load_global(MP_OBJ_QSTR_VALUE(key)));
@@ -337,14 +338,14 @@ dispatch_loop:
#endif
#if !MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE
- ENTRY(MP_BC_LOAD_ATTR): {
+ ENTRY(MP_BC_LOAD_ATTR) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
SET_TOP(mp_load_attr(TOP(), qst));
DISPATCH();
}
#else
- ENTRY(MP_BC_LOAD_ATTR): {
+ ENTRY(MP_BC_LOAD_ATTR) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t top = TOP();
@@ -358,7 +359,7 @@ dispatch_loop:
} else {
elem = mp_map_lookup(&self->members, key, MP_MAP_LOOKUP);
if (elem != NULL) {
- *(byte*)ip = elem - &self->members.table[0];
+ *(byte *)ip = elem - &self->members.table[0];
} else {
goto load_attr_cache_fail;
}
@@ -374,7 +375,7 @@ dispatch_loop:
}
#endif
- ENTRY(MP_BC_LOAD_METHOD): {
+ ENTRY(MP_BC_LOAD_METHOD) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_load_method(*sp, qst, sp);
@@ -382,7 +383,7 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_LOAD_SUPER_METHOD): {
+ ENTRY(MP_BC_LOAD_SUPER_METHOD) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
sp -= 1;
@@ -390,38 +391,38 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_LOAD_BUILD_CLASS):
+ ENTRY(MP_BC_LOAD_BUILD_CLASS) :
MARK_EXC_IP_SELECTIVE();
- PUSH(mp_load_build_class());
- DISPATCH();
+ PUSH(mp_load_build_class());
+ DISPATCH();
- ENTRY(MP_BC_LOAD_SUBSCR): {
+ ENTRY(MP_BC_LOAD_SUBSCR) : {
MARK_EXC_IP_SELECTIVE();
mp_obj_t index = POP();
SET_TOP(mp_obj_subscr(TOP(), index, MP_OBJ_SENTINEL));
DISPATCH();
}
- ENTRY(MP_BC_STORE_FAST_N): {
+ ENTRY(MP_BC_STORE_FAST_N) : {
DECODE_UINT;
fastn[-unum] = POP();
DISPATCH();
}
- ENTRY(MP_BC_STORE_DEREF): {
+ ENTRY(MP_BC_STORE_DEREF) : {
DECODE_UINT;
mp_obj_cell_set(fastn[-unum], POP());
DISPATCH();
}
- ENTRY(MP_BC_STORE_NAME): {
+ ENTRY(MP_BC_STORE_NAME) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_store_name(qst, POP());
DISPATCH();
}
- ENTRY(MP_BC_STORE_GLOBAL): {
+ ENTRY(MP_BC_STORE_GLOBAL) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_store_global(qst, POP());
@@ -429,7 +430,7 @@ dispatch_loop:
}
#if !MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE
- ENTRY(MP_BC_STORE_ATTR): {
+ ENTRY(MP_BC_STORE_ATTR) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_store_attr(sp[0], qst, sp[-1]);
@@ -442,7 +443,7 @@ dispatch_loop:
// self->members then it can't be a property or have descriptors. A
// consequence of this is that we can't use MP_MAP_LOOKUP_ADD_IF_NOT_FOUND
// in the fast-path below, because that store could override a property.
- ENTRY(MP_BC_STORE_ATTR): {
+ ENTRY(MP_BC_STORE_ATTR) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t top = TOP();
@@ -456,7 +457,7 @@ dispatch_loop:
} else {
elem = mp_map_lookup(&self->members, key, MP_MAP_LOOKUP);
if (elem != NULL) {
- *(byte*)ip = elem - &self->members.table[0];
+ *(byte *)ip = elem - &self->members.table[0];
} else {
goto store_attr_cache_fail;
}
@@ -474,13 +475,13 @@ dispatch_loop:
}
#endif
- ENTRY(MP_BC_STORE_SUBSCR):
+ ENTRY(MP_BC_STORE_SUBSCR) :
MARK_EXC_IP_SELECTIVE();
- mp_obj_subscr(sp[-1], sp[0], sp[-2]);
- sp -= 3;
- DISPATCH();
+ mp_obj_subscr(sp[-1], sp[0], sp[-2]);
+ sp -= 3;
+ DISPATCH();
- ENTRY(MP_BC_DELETE_FAST): {
+ ENTRY(MP_BC_DELETE_FAST) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
if (fastn[-unum] == MP_OBJ_NULL) {
@@ -490,7 +491,7 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_DELETE_DEREF): {
+ ENTRY(MP_BC_DELETE_DEREF) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
if (mp_obj_cell_get(fastn[-unum]) == MP_OBJ_NULL) {
@@ -500,44 +501,44 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_DELETE_NAME): {
+ ENTRY(MP_BC_DELETE_NAME) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_delete_name(qst);
DISPATCH();
}
- ENTRY(MP_BC_DELETE_GLOBAL): {
+ ENTRY(MP_BC_DELETE_GLOBAL) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_delete_global(qst);
DISPATCH();
}
- ENTRY(MP_BC_DUP_TOP): {
+ ENTRY(MP_BC_DUP_TOP) : {
mp_obj_t top = TOP();
PUSH(top);
DISPATCH();
}
- ENTRY(MP_BC_DUP_TOP_TWO):
+ ENTRY(MP_BC_DUP_TOP_TWO) :
sp += 2;
- sp[0] = sp[-2];
- sp[-1] = sp[-3];
- DISPATCH();
+ sp[0] = sp[-2];
+ sp[-1] = sp[-3];
+ DISPATCH();
- ENTRY(MP_BC_POP_TOP):
+ ENTRY(MP_BC_POP_TOP) :
sp -= 1;
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_ROT_TWO): {
+ ENTRY(MP_BC_ROT_TWO) : {
mp_obj_t top = sp[0];
sp[0] = sp[-1];
sp[-1] = top;
DISPATCH();
}
- ENTRY(MP_BC_ROT_THREE): {
+ ENTRY(MP_BC_ROT_THREE) : {
mp_obj_t top = sp[0];
sp[0] = sp[-1];
sp[-1] = sp[-2];
@@ -545,13 +546,13 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_JUMP): {
+ ENTRY(MP_BC_JUMP) : {
DECODE_SLABEL;
ip += slab;
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_POP_JUMP_IF_TRUE): {
+ ENTRY(MP_BC_POP_JUMP_IF_TRUE) : {
DECODE_SLABEL;
if (mp_obj_is_true(POP())) {
ip += slab;
@@ -559,7 +560,7 @@ dispatch_loop:
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_POP_JUMP_IF_FALSE): {
+ ENTRY(MP_BC_POP_JUMP_IF_FALSE) : {
DECODE_SLABEL;
if (!mp_obj_is_true(POP())) {
ip += slab;
@@ -567,7 +568,7 @@ dispatch_loop:
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_JUMP_IF_TRUE_OR_POP): {
+ ENTRY(MP_BC_JUMP_IF_TRUE_OR_POP) : {
DECODE_SLABEL;
if (mp_obj_is_true(TOP())) {
ip += slab;
@@ -577,7 +578,7 @@ dispatch_loop:
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_JUMP_IF_FALSE_OR_POP): {
+ ENTRY(MP_BC_JUMP_IF_FALSE_OR_POP) : {
DECODE_SLABEL;
if (mp_obj_is_true(TOP())) {
sp--;
@@ -587,7 +588,7 @@ dispatch_loop:
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_SETUP_WITH): {
+ ENTRY(MP_BC_SETUP_WITH) : {
MARK_EXC_IP_SELECTIVE();
// stack: (..., ctx_mgr)
mp_obj_t obj = TOP();
@@ -601,7 +602,7 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_WITH_CLEANUP): {
+ ENTRY(MP_BC_WITH_CLEANUP) : {
MARK_EXC_IP_SELECTIVE();
// Arriving here, there's "exception control block" on top of stack,
// and __exit__ method (with self) underneath it. Bytecode calls __exit__,
@@ -656,12 +657,12 @@ dispatch_loop:
DISPATCH();
}
- ENTRY(MP_BC_UNWIND_JUMP): {
+ ENTRY(MP_BC_UNWIND_JUMP) : {
MARK_EXC_IP_SELECTIVE();
DECODE_SLABEL;
PUSH((mp_obj_t)(mp_uint_t)(uintptr_t)(ip + slab)); // push destination ip for jump
PUSH((mp_obj_t)(mp_uint_t)(*ip)); // push number of exception handlers to unwind (0x80 bit set if we also need to pop stack)
-unwind_jump:;
+ unwind_jump:;
mp_uint_t unum = (mp_uint_t)POP(); // get number of exception handlers to unwind
while ((unum & 0x7f) > 0) {
unum -= 1;
@@ -684,7 +685,7 @@ unwind_jump:;
}
POP_EXC_BLOCK();
}
- ip = (const byte*)MP_OBJ_TO_PTR(POP()); // pop destination ip for jump
+ ip = (const byte *)MP_OBJ_TO_PTR(POP()); // pop destination ip for jump
if (unum != 0) {
// pop the exhausted iterator
sp -= MP_OBJ_ITER_BUF_NSLOTS;
@@ -693,8 +694,8 @@ unwind_jump:;
}
// matched against: POP_BLOCK or POP_EXCEPT (anything else?)
- ENTRY(MP_BC_SETUP_EXCEPT):
- ENTRY(MP_BC_SETUP_FINALLY): {
+ ENTRY(MP_BC_SETUP_EXCEPT) :
+ ENTRY(MP_BC_SETUP_FINALLY) : {
MARK_EXC_IP_SELECTIVE();
#if SELECTIVE_EXC_IP
PUSH_EXC_BLOCK((code_state->ip[-1] == MP_BC_SETUP_FINALLY) ? 1 : 0);
@@ -704,45 +705,45 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_END_FINALLY):
+ ENTRY(MP_BC_END_FINALLY) :
MARK_EXC_IP_SELECTIVE();
- // if TOS is None, just pops it and continues
- // if TOS is an integer, finishes coroutine and returns control to caller
- // if TOS is an exception, reraises the exception
- if (TOP() == mp_const_none) {
- sp--;
- } else if (MP_OBJ_IS_SMALL_INT(TOP())) {
- // We finished "finally" coroutine and now dispatch back
- // to our caller, based on TOS value
- mp_int_t cause = MP_OBJ_SMALL_INT_VALUE(POP());
- if (cause < 0) {
- // A negative cause indicates unwind return
- goto unwind_return;
- } else {
- // Otherwise it's an unwind jump and we must push as a raw
- // number the number of exception handlers to unwind
- PUSH((mp_obj_t)cause);
- goto unwind_jump;
- }
+ // if TOS is None, just pops it and continues
+ // if TOS is an integer, finishes coroutine and returns control to caller
+ // if TOS is an exception, reraises the exception
+ if (TOP() == mp_const_none) {
+ sp--;
+ } else if (MP_OBJ_IS_SMALL_INT(TOP())) {
+ // We finished "finally" coroutine and now dispatch back
+ // to our caller, based on TOS value
+ mp_int_t cause = MP_OBJ_SMALL_INT_VALUE(POP());
+ if (cause < 0) {
+ // A negative cause indicates unwind return
+ goto unwind_return;
} else {
- assert(mp_obj_is_exception_instance(TOP()));
- RAISE(TOP());
+ // Otherwise it's an unwind jump and we must push as a raw
+ // number the number of exception handlers to unwind
+ PUSH((mp_obj_t)cause);
+ goto unwind_jump;
}
- DISPATCH();
+ } else {
+ assert(mp_obj_is_exception_instance(TOP()));
+ RAISE(TOP());
+ }
+ DISPATCH();
- ENTRY(MP_BC_GET_ITER):
+ ENTRY(MP_BC_GET_ITER) :
MARK_EXC_IP_SELECTIVE();
- SET_TOP(mp_getiter(TOP(), NULL));
- DISPATCH();
+ SET_TOP(mp_getiter(TOP(), NULL));
+ DISPATCH();
// An iterator for a for-loop takes MP_OBJ_ITER_BUF_NSLOTS slots on
// the Python value stack. These slots are either used to store the
// iterator object itself, or the first slot is MP_OBJ_NULL and
// the second slot holds a reference to the iterator object.
- ENTRY(MP_BC_GET_ITER_STACK): {
+ ENTRY(MP_BC_GET_ITER_STACK) : {
MARK_EXC_IP_SELECTIVE();
mp_obj_t obj = TOP();
- mp_obj_iter_buf_t *iter_buf = (mp_obj_iter_buf_t*)sp;
+ mp_obj_iter_buf_t *iter_buf = (mp_obj_iter_buf_t *)sp;
sp += MP_OBJ_ITER_BUF_NSLOTS - 1;
obj = mp_getiter(obj, iter_buf);
if (obj != MP_OBJ_FROM_PTR(iter_buf)) {
@@ -753,7 +754,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_FOR_ITER): {
+ ENTRY(MP_BC_FOR_ITER) : {
MARK_EXC_IP_SELECTIVE();
DECODE_ULABEL; // the jump offset if iteration finishes; for labels are always forward
code_state->sp = sp;
@@ -774,20 +775,20 @@ unwind_jump:;
}
// matched against: SETUP_EXCEPT, SETUP_FINALLY, SETUP_WITH
- ENTRY(MP_BC_POP_BLOCK):
+ ENTRY(MP_BC_POP_BLOCK) :
// we are exiting an exception handler, so pop the last one of the exception-stack
assert(exc_sp >= exc_stack);
- POP_EXC_BLOCK();
- DISPATCH();
+ POP_EXC_BLOCK();
+ DISPATCH();
// matched against: SETUP_EXCEPT
- ENTRY(MP_BC_POP_EXCEPT):
+ ENTRY(MP_BC_POP_EXCEPT) :
assert(exc_sp >= exc_stack);
- assert(currently_in_except_block);
- POP_EXC_BLOCK();
- DISPATCH();
+ assert(currently_in_except_block);
+ POP_EXC_BLOCK();
+ DISPATCH();
- ENTRY(MP_BC_BUILD_TUPLE): {
+ ENTRY(MP_BC_BUILD_TUPLE) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
sp -= unum - 1;
@@ -795,7 +796,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_BUILD_LIST): {
+ ENTRY(MP_BC_BUILD_LIST) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
sp -= unum - 1;
@@ -803,31 +804,31 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_BUILD_MAP): {
+ ENTRY(MP_BC_BUILD_MAP) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
PUSH(mp_obj_new_dict(unum));
DISPATCH();
}
- ENTRY(MP_BC_STORE_MAP):
+ ENTRY(MP_BC_STORE_MAP) :
MARK_EXC_IP_SELECTIVE();
- sp -= 2;
- mp_obj_dict_store(sp[0], sp[2], sp[1]);
- DISPATCH();
+ sp -= 2;
+ mp_obj_dict_store(sp[0], sp[2], sp[1]);
+ DISPATCH();
-#if MICROPY_PY_BUILTINS_SET
- ENTRY(MP_BC_BUILD_SET): {
+ #if MICROPY_PY_BUILTINS_SET
+ ENTRY(MP_BC_BUILD_SET) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
sp -= unum - 1;
SET_TOP(mp_obj_new_set(unum, sp));
DISPATCH();
}
-#endif
+ #endif
-#if MICROPY_PY_BUILTINS_SLICE
- ENTRY(MP_BC_BUILD_SLICE): {
+ #if MICROPY_PY_BUILTINS_SLICE
+ ENTRY(MP_BC_BUILD_SLICE) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
if (unum == 2) {
@@ -842,9 +843,9 @@ unwind_jump:;
}
DISPATCH();
}
-#endif
+ #endif
- ENTRY(MP_BC_STORE_COMP): {
+ ENTRY(MP_BC_STORE_COMP) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
mp_obj_t obj = sp[-(unum >> 2)];
@@ -863,7 +864,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_UNPACK_SEQUENCE): {
+ ENTRY(MP_BC_UNPACK_SEQUENCE) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
mp_unpack_sequence(sp[0], unum, sp);
@@ -871,7 +872,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_UNPACK_EX): {
+ ENTRY(MP_BC_UNPACK_EX) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
mp_unpack_ex(sp[0], unum, sp);
@@ -879,13 +880,13 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_MAKE_FUNCTION): {
+ ENTRY(MP_BC_MAKE_FUNCTION) : {
DECODE_PTR;
PUSH(mp_make_function_from_raw_code(ptr, MP_OBJ_NULL, MP_OBJ_NULL));
DISPATCH();
}
- ENTRY(MP_BC_MAKE_FUNCTION_DEFARGS): {
+ ENTRY(MP_BC_MAKE_FUNCTION_DEFARGS) : {
DECODE_PTR;
// Stack layout: def_tuple def_dict <- TOS
mp_obj_t def_dict = POP();
@@ -893,7 +894,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_MAKE_CLOSURE): {
+ ENTRY(MP_BC_MAKE_CLOSURE) : {
DECODE_PTR;
size_t n_closed_over = *ip++;
// Stack layout: closed_overs <- TOS
@@ -902,7 +903,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_MAKE_CLOSURE_DEFARGS): {
+ ENTRY(MP_BC_MAKE_CLOSURE_DEFARGS) : {
DECODE_PTR;
size_t n_closed_over = *ip++;
// Stack layout: def_tuple def_dict closed_overs <- TOS
@@ -911,7 +912,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_CALL_FUNCTION): {
+ ENTRY(MP_BC_CALL_FUNCTION) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
// unum & 0xff == n_positional
@@ -945,7 +946,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_CALL_FUNCTION_VAR_KW): {
+ ENTRY(MP_BC_CALL_FUNCTION_VAR_KW) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
// unum & 0xff == n_positional
@@ -990,7 +991,7 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_CALL_METHOD): {
+ ENTRY(MP_BC_CALL_METHOD) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
// unum & 0xff == n_positional
@@ -1028,7 +1029,7 @@ unwind_jump:;
DISPATCH_WITH_PEND_EXC_CHECK();
}
- ENTRY(MP_BC_CALL_METHOD_VAR_KW): {
+ ENTRY(MP_BC_CALL_METHOD_VAR_KW) : {
MARK_EXC_IP_SELECTIVE();
DECODE_UINT;
// unum & 0xff == n_positional
@@ -1073,66 +1074,66 @@ unwind_jump:;
DISPATCH();
}
- ENTRY(MP_BC_RETURN_VALUE):
+ ENTRY(MP_BC_RETURN_VALUE) :
MARK_EXC_IP_SELECTIVE();
- // These next 3 lines pop a try-finally exception handler, if one
- // is there on the exception stack. Without this the finally block
- // is executed a second time when the return is executed, because
- // the try-finally exception handler is still on the stack.
- // TODO Possibly find a better way to handle this case.
- if (currently_in_except_block) {
- POP_EXC_BLOCK();
- }
-unwind_return:
- while (exc_sp >= exc_stack) {
- if (MP_TAGPTR_TAG1(exc_sp->val_sp)) {
- // Getting here the stack looks like:
- // (..., X, [iter0, iter1, ...,] ret_val)
- // where X is pointed to by exc_sp->val_sp and in the case
- // of a "with" block contains the context manager info.
- // There may be 0 or more for-iterators between X and the
- // return value, and these must be removed before control can
- // pass to the finally code. We simply copy the ret_value down
- // over these iterators, if they exist. If they don't then the
- // following is a null operation.
- mp_obj_t *finally_sp = MP_TAGPTR_PTR(exc_sp->val_sp);
- finally_sp[1] = sp[0];
- sp = &finally_sp[1];
- // We're going to run "finally" code as a coroutine
- // (not calling it recursively). Set up a sentinel
- // on a stack so it can return back to us when it is
- // done (when WITH_CLEANUP or END_FINALLY reached).
- PUSH(MP_OBJ_NEW_SMALL_INT(-1));
- ip = exc_sp->handler;
- exc_sp--;
- goto dispatch_loop;
- }
+ // These next 3 lines pop a try-finally exception handler, if one
+ // is there on the exception stack. Without this the finally block
+ // is executed a second time when the return is executed, because
+ // the try-finally exception handler is still on the stack.
+ // TODO Possibly find a better way to handle this case.
+ if (currently_in_except_block) {
+ POP_EXC_BLOCK();
+ }
+ unwind_return:
+ while (exc_sp >= exc_stack) {
+ if (MP_TAGPTR_TAG1(exc_sp->val_sp)) {
+ // Getting here the stack looks like:
+ // (..., X, [iter0, iter1, ...,] ret_val)
+ // where X is pointed to by exc_sp->val_sp and in the case
+ // of a "with" block contains the context manager info.
+ // There may be 0 or more for-iterators between X and the
+ // return value, and these must be removed before control can
+ // pass to the finally code. We simply copy the ret_value down
+ // over these iterators, if they exist. If they don't then the
+ // following is a null operation.
+ mp_obj_t *finally_sp = MP_TAGPTR_PTR(exc_sp->val_sp);
+ finally_sp[1] = sp[0];
+ sp = &finally_sp[1];
+ // We're going to run "finally" code as a coroutine
+ // (not calling it recursively). Set up a sentinel
+ // on a stack so it can return back to us when it is
+ // done (when WITH_CLEANUP or END_FINALLY reached).
+ PUSH(MP_OBJ_NEW_SMALL_INT(-1));
+ ip = exc_sp->handler;
exc_sp--;
+ goto dispatch_loop;
}
- nlr_pop();
- code_state->sp = sp;
- assert(exc_sp == exc_stack - 1);
- MICROPY_VM_HOOK_RETURN
- #if MICROPY_STACKLESS
- if (code_state->prev != NULL) {
- mp_obj_t res = *sp;
- mp_globals_set(code_state->old_globals);
- mp_code_state_t *new_code_state = code_state->prev;
- #if MICROPY_ENABLE_PYSTACK
- // Free code_state, and args allocated by mp_call_prepare_args_n_kw_var
- // (The latter is implicitly freed when using pystack due to its LIFO nature.)
- // The sizeof in the following statement does not include the size of the variable
- // part of the struct. This arg is anyway not used if pystack is enabled.
- mp_nonlocal_free(code_state, sizeof(mp_code_state_t));
- #endif
- code_state = new_code_state;
- *code_state->sp = res;
- goto run_code_state;
- }
+ exc_sp--;
+ }
+ nlr_pop();
+ code_state->sp = sp;
+ assert(exc_sp == exc_stack - 1);
+ MICROPY_VM_HOOK_RETURN
+ #if MICROPY_STACKLESS
+ if (code_state->prev != NULL) {
+ mp_obj_t res = *sp;
+ mp_globals_set(code_state->old_globals);
+ mp_code_state_t *new_code_state = code_state->prev;
+ #if MICROPY_ENABLE_PYSTACK
+ // Free code_state, and args allocated by mp_call_prepare_args_n_kw_var
+ // (The latter is implicitly freed when using pystack due to its LIFO nature.)
+ // The sizeof in the following statement does not include the size of the variable
+ // part of the struct. This arg is anyway not used if pystack is enabled.
+ mp_nonlocal_free(code_state, sizeof(mp_code_state_t));
#endif
- return MP_VM_RETURN_NORMAL;
+ code_state = new_code_state;
+ *code_state->sp = res;
+ goto run_code_state;
+ }
+ #endif
+ return MP_VM_RETURN_NORMAL;
- ENTRY(MP_BC_RAISE_VARARGS): {
+ ENTRY(MP_BC_RAISE_VARARGS) : {
MARK_EXC_IP_SELECTIVE();
mp_uint_t unum = *ip;
mp_obj_t obj;
@@ -1161,19 +1162,20 @@ unwind_return:
RAISE(obj);
}
- ENTRY(MP_BC_YIELD_VALUE):
-yield:
+ ENTRY(MP_BC_YIELD_VALUE) :
+ yield:
nlr_pop();
- code_state->ip = ip;
- code_state->sp = sp;
- code_state->exc_sp = MP_TAGPTR_MAKE(exc_sp, currently_in_except_block);
- return MP_VM_RETURN_YIELD;
+ code_state->ip = ip;
+ code_state->sp = sp;
+ code_state->exc_sp = MP_TAGPTR_MAKE(exc_sp, currently_in_except_block);
+ return MP_VM_RETURN_YIELD;
- ENTRY(MP_BC_YIELD_FROM): {
+ ENTRY(MP_BC_YIELD_FROM) : {
MARK_EXC_IP_SELECTIVE();
-//#define EXC_MATCH(exc, type) MP_OBJ_IS_TYPE(exc, type)
+// #define EXC_MATCH(exc, type) MP_OBJ_IS_TYPE(exc, type)
#define EXC_MATCH(exc, type) mp_obj_exception_match(exc, type)
-#define GENERATOR_EXIT_IF_NEEDED(t) if (t != MP_OBJ_NULL && EXC_MATCH(t, MP_OBJ_FROM_PTR(&mp_type_GeneratorExit))) { RAISE(t); }
+#define GENERATOR_EXIT_IF_NEEDED(t) if (t != MP_OBJ_NULL && EXC_MATCH(t, MP_OBJ_FROM_PTR(&mp_type_GeneratorExit))) { RAISE(t); \
+}
mp_vm_return_kind_t ret_kind;
mp_obj_t send_value = POP();
mp_obj_t t_exc = MP_OBJ_NULL;
@@ -1222,7 +1224,7 @@ yield:
}
}
- ENTRY(MP_BC_IMPORT_NAME): {
+ ENTRY(MP_BC_IMPORT_NAME) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t obj = POP();
@@ -1230,7 +1232,7 @@ yield:
DISPATCH();
}
- ENTRY(MP_BC_IMPORT_FROM): {
+ ENTRY(MP_BC_IMPORT_FROM) : {
MARK_EXC_IP_SELECTIVE();
DECODE_QSTR;
mp_obj_t obj = mp_import_from(TOP(), qst);
@@ -1238,30 +1240,30 @@ yield:
DISPATCH();
}
- ENTRY(MP_BC_IMPORT_STAR):
+ ENTRY(MP_BC_IMPORT_STAR) :
MARK_EXC_IP_SELECTIVE();
- mp_import_all(POP());
- DISPATCH();
+ mp_import_all(POP());
+ DISPATCH();
-#if MICROPY_OPT_COMPUTED_GOTO
- ENTRY(MP_BC_LOAD_CONST_SMALL_INT_MULTI):
+ #if MICROPY_OPT_COMPUTED_GOTO
+ ENTRY(MP_BC_LOAD_CONST_SMALL_INT_MULTI) :
PUSH(MP_OBJ_NEW_SMALL_INT((mp_int_t)ip[-1] - MP_BC_LOAD_CONST_SMALL_INT_MULTI - 16));
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_LOAD_FAST_MULTI):
+ ENTRY(MP_BC_LOAD_FAST_MULTI) :
obj_shared = fastn[MP_BC_LOAD_FAST_MULTI - (mp_int_t)ip[-1]];
- goto load_check;
+ goto load_check;
- ENTRY(MP_BC_STORE_FAST_MULTI):
+ ENTRY(MP_BC_STORE_FAST_MULTI) :
fastn[MP_BC_STORE_FAST_MULTI - (mp_int_t)ip[-1]] = POP();
- DISPATCH();
+ DISPATCH();
- ENTRY(MP_BC_UNARY_OP_MULTI):
+ ENTRY(MP_BC_UNARY_OP_MULTI) :
MARK_EXC_IP_SELECTIVE();
- SET_TOP(mp_unary_op(ip[-1] - MP_BC_UNARY_OP_MULTI, TOP()));
- DISPATCH();
+ SET_TOP(mp_unary_op(ip[-1] - MP_BC_UNARY_OP_MULTI, TOP()));
+ DISPATCH();
- ENTRY(MP_BC_BINARY_OP_MULTI): {
+ ENTRY(MP_BC_BINARY_OP_MULTI) : {
MARK_EXC_IP_SELECTIVE();
mp_obj_t rhs = POP();
mp_obj_t lhs = TOP();
@@ -1269,29 +1271,29 @@ yield:
DISPATCH();
}
- ENTRY_DEFAULT:
- MARK_EXC_IP_SELECTIVE();
-#else
- ENTRY_DEFAULT:
- if (ip[-1] < MP_BC_LOAD_CONST_SMALL_INT_MULTI + 64) {
- PUSH(MP_OBJ_NEW_SMALL_INT((mp_int_t)ip[-1] - MP_BC_LOAD_CONST_SMALL_INT_MULTI - 16));
- DISPATCH();
- } else if (ip[-1] < MP_BC_LOAD_FAST_MULTI + 16) {
- obj_shared = fastn[MP_BC_LOAD_FAST_MULTI - (mp_int_t)ip[-1]];
- goto load_check;
- } else if (ip[-1] < MP_BC_STORE_FAST_MULTI + 16) {
- fastn[MP_BC_STORE_FAST_MULTI - (mp_int_t)ip[-1]] = POP();
- DISPATCH();
- } else if (ip[-1] < MP_BC_UNARY_OP_MULTI + MP_UNARY_OP_NUM_BYTECODE) {
- SET_TOP(mp_unary_op(ip[-1] - MP_BC_UNARY_OP_MULTI, TOP()));
- DISPATCH();
- } else if (ip[-1] < MP_BC_BINARY_OP_MULTI + MP_BINARY_OP_NUM_BYTECODE) {
- mp_obj_t rhs = POP();
- mp_obj_t lhs = TOP();
- SET_TOP(mp_binary_op(ip[-1] - MP_BC_BINARY_OP_MULTI, lhs, rhs));
- DISPATCH();
- } else
-#endif
+ ENTRY_DEFAULT:
+ MARK_EXC_IP_SELECTIVE();
+ #else
+ ENTRY_DEFAULT:
+ if (ip[-1] < MP_BC_LOAD_CONST_SMALL_INT_MULTI + 64) {
+ PUSH(MP_OBJ_NEW_SMALL_INT((mp_int_t)ip[-1] - MP_BC_LOAD_CONST_SMALL_INT_MULTI - 16));
+ DISPATCH();
+ } else if (ip[-1] < MP_BC_LOAD_FAST_MULTI + 16) {
+ obj_shared = fastn[MP_BC_LOAD_FAST_MULTI - (mp_int_t)ip[-1]];
+ goto load_check;
+ } else if (ip[-1] < MP_BC_STORE_FAST_MULTI + 16) {
+ fastn[MP_BC_STORE_FAST_MULTI - (mp_int_t)ip[-1]] = POP();
+ DISPATCH();
+ } else if (ip[-1] < MP_BC_UNARY_OP_MULTI + MP_UNARY_OP_NUM_BYTECODE) {
+ SET_TOP(mp_unary_op(ip[-1] - MP_BC_UNARY_OP_MULTI, TOP()));
+ DISPATCH();
+ } else if (ip[-1] < MP_BC_BINARY_OP_MULTI + MP_BINARY_OP_NUM_BYTECODE) {
+ mp_obj_t rhs = POP();
+ mp_obj_t lhs = TOP();
+ SET_TOP(mp_binary_op(ip[-1] - MP_BC_BINARY_OP_MULTI, lhs, rhs));
+ DISPATCH();
+ } else
+ #endif
{
mp_obj_t obj = mp_obj_new_exception_msg(&mp_type_NotImplementedError, translate("byte code not implemented"));
nlr_pop();
@@ -1299,11 +1301,11 @@ yield:
return MP_VM_RETURN_EXCEPTION;
}
-#if !MICROPY_OPT_COMPUTED_GOTO
- } // switch
-#endif
+ #if !MICROPY_OPT_COMPUTED_GOTO
+ } // switch
+ #endif
-pending_exception_check:
+ pending_exception_check:
MICROPY_VM_HOOK_LOOP
#if MICROPY_ENABLE_SCHEDULER
@@ -1345,8 +1347,8 @@ pending_exception_check:
if (MP_STATE_VM(sched_state) == MP_SCHED_IDLE)
#endif
{
- MP_THREAD_GIL_EXIT();
- MP_THREAD_GIL_ENTER();
+ MP_THREAD_GIL_EXIT();
+ MP_THREAD_GIL_ENTER();
}
}
#endif
@@ -1354,7 +1356,7 @@ pending_exception_check:
} // for loop
} else {
-exception_handler:
+ exception_handler:
// exception occurred
#if MICROPY_PY_SYS_EXC_INFO
@@ -1366,7 +1368,7 @@ exception_handler:
code_state->ip -= 1;
#endif
- if (mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t*)nlr.ret_val)->type), MP_OBJ_FROM_PTR(&mp_type_StopIteration))) {
+ if (mp_obj_is_subclass_fast(MP_OBJ_FROM_PTR(((mp_obj_base_t *)nlr.ret_val)->type), MP_OBJ_FROM_PTR(&mp_type_StopIteration))) {
if (code_state->ip) {
// check if it's a StopIteration within a for block
if (*code_state->ip == MP_BC_FOR_ITER) {
@@ -1386,9 +1388,9 @@ exception_handler:
}
}
-#if MICROPY_STACKLESS
-unwind_loop:
-#endif
+ #if MICROPY_STACKLESS
+ unwind_loop:
+ #endif
// set file and line number that the exception occurred at
// TODO: don't set traceback for exceptions re-raised by END_FINALLY.
// But consider how to handle nested exceptions.
@@ -1479,7 +1481,7 @@ unwind_loop:
code_state = new_code_state;
size_t n_state = mp_decode_uint_value(code_state->fun_bc->bytecode);
fastn = &code_state->state[n_state - 1];
- exc_stack = (mp_exc_stack_t*)(code_state->state + n_state);
+ exc_stack = (mp_exc_stack_t *)(code_state->state + n_state);
// variables that are visible to the exception handler (declared volatile)
currently_in_except_block = MP_TAGPTR_TAG0(code_state->exc_sp); // 0 or 1, to detect nested exceptions
exc_sp = MP_TAGPTR_PTR(code_state->exc_sp); // stack grows up, exc_sp points to top of stack
diff --git a/py/vmentrytable.h b/py/vmentrytable.h
index 31832bb58..0f6c5e96d 100644
--- a/py/vmentrytable.h
+++ b/py/vmentrytable.h
@@ -32,7 +32,7 @@
#include "supervisor/linker.h"
#if MICROPY_OPT_COMPUTED_GOTO_SAVE_SPACE
-#define COMPUTE_ENTRY(x) ((char*)(x) - (char*)&&entry_MP_BC_LOAD_CONST_FALSE)
+#define COMPUTE_ENTRY(x) ((char *)(x) - (char *) && entry_MP_BC_LOAD_CONST_FALSE)
typedef int16_t entry_table_type;
#else
#define COMPUTE_ENTRY(x) (x)
@@ -40,87 +40,87 @@ typedef void *entry_table_type;
#endif
static entry_table_type const PLACE_IN_DTCM_DATA(entry_table[256]) = {
- [0 ... 255] = COMPUTE_ENTRY(&&entry_default),
- [MP_BC_LOAD_CONST_FALSE] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_FALSE),
- [MP_BC_LOAD_CONST_NONE] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_NONE),
- [MP_BC_LOAD_CONST_TRUE] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_TRUE),
- [MP_BC_LOAD_CONST_SMALL_INT] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_SMALL_INT),
- [MP_BC_LOAD_CONST_STRING] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_STRING),
- [MP_BC_LOAD_CONST_OBJ] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_OBJ),
- [MP_BC_LOAD_NULL] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_NULL),
- [MP_BC_LOAD_FAST_N] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_FAST_N),
- [MP_BC_LOAD_DEREF] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_DEREF),
- [MP_BC_LOAD_NAME] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_NAME),
- [MP_BC_LOAD_GLOBAL] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_GLOBAL),
- [MP_BC_LOAD_ATTR] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_ATTR),
- [MP_BC_LOAD_METHOD] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_METHOD),
- [MP_BC_LOAD_SUPER_METHOD] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_SUPER_METHOD),
- [MP_BC_LOAD_BUILD_CLASS] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_BUILD_CLASS),
- [MP_BC_LOAD_SUBSCR] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_SUBSCR),
- [MP_BC_STORE_FAST_N] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_FAST_N),
- [MP_BC_STORE_DEREF] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_DEREF),
- [MP_BC_STORE_NAME] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_NAME),
- [MP_BC_STORE_GLOBAL] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_GLOBAL),
- [MP_BC_STORE_ATTR] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_ATTR),
- [MP_BC_STORE_SUBSCR] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_SUBSCR),
- [MP_BC_DELETE_FAST] = COMPUTE_ENTRY(&&entry_MP_BC_DELETE_FAST),
- [MP_BC_DELETE_DEREF] = COMPUTE_ENTRY(&&entry_MP_BC_DELETE_DEREF),
- [MP_BC_DELETE_NAME] = COMPUTE_ENTRY(&&entry_MP_BC_DELETE_NAME),
- [MP_BC_DELETE_GLOBAL] = COMPUTE_ENTRY(&&entry_MP_BC_DELETE_GLOBAL),
- [MP_BC_DUP_TOP] = COMPUTE_ENTRY(&&entry_MP_BC_DUP_TOP),
- [MP_BC_DUP_TOP_TWO] = COMPUTE_ENTRY(&&entry_MP_BC_DUP_TOP_TWO),
- [MP_BC_POP_TOP] = COMPUTE_ENTRY(&&entry_MP_BC_POP_TOP),
- [MP_BC_ROT_TWO] = COMPUTE_ENTRY(&&entry_MP_BC_ROT_TWO),
- [MP_BC_ROT_THREE] = COMPUTE_ENTRY(&&entry_MP_BC_ROT_THREE),
- [MP_BC_JUMP] = COMPUTE_ENTRY(&&entry_MP_BC_JUMP),
- [MP_BC_POP_JUMP_IF_TRUE] = COMPUTE_ENTRY(&&entry_MP_BC_POP_JUMP_IF_TRUE),
- [MP_BC_POP_JUMP_IF_FALSE] = COMPUTE_ENTRY(&&entry_MP_BC_POP_JUMP_IF_FALSE),
- [MP_BC_JUMP_IF_TRUE_OR_POP] = COMPUTE_ENTRY(&&entry_MP_BC_JUMP_IF_TRUE_OR_POP),
- [MP_BC_JUMP_IF_FALSE_OR_POP] = COMPUTE_ENTRY(&&entry_MP_BC_JUMP_IF_FALSE_OR_POP),
- [MP_BC_SETUP_WITH] = COMPUTE_ENTRY(&&entry_MP_BC_SETUP_WITH),
- [MP_BC_WITH_CLEANUP] = COMPUTE_ENTRY(&&entry_MP_BC_WITH_CLEANUP),
- [MP_BC_UNWIND_JUMP] = COMPUTE_ENTRY(&&entry_MP_BC_UNWIND_JUMP),
- [MP_BC_SETUP_EXCEPT] = COMPUTE_ENTRY(&&entry_MP_BC_SETUP_EXCEPT),
- [MP_BC_SETUP_FINALLY] = COMPUTE_ENTRY(&&entry_MP_BC_SETUP_FINALLY),
- [MP_BC_END_FINALLY] = COMPUTE_ENTRY(&&entry_MP_BC_END_FINALLY),
- [MP_BC_GET_ITER] = COMPUTE_ENTRY(&&entry_MP_BC_GET_ITER),
- [MP_BC_GET_ITER_STACK] = COMPUTE_ENTRY(&&entry_MP_BC_GET_ITER_STACK),
- [MP_BC_FOR_ITER] = COMPUTE_ENTRY(&&entry_MP_BC_FOR_ITER),
- [MP_BC_POP_BLOCK] = COMPUTE_ENTRY(&&entry_MP_BC_POP_BLOCK),
- [MP_BC_POP_EXCEPT] = COMPUTE_ENTRY(&&entry_MP_BC_POP_EXCEPT),
- [MP_BC_BUILD_TUPLE] = COMPUTE_ENTRY(&&entry_MP_BC_BUILD_TUPLE),
- [MP_BC_BUILD_LIST] = COMPUTE_ENTRY(&&entry_MP_BC_BUILD_LIST),
- [MP_BC_BUILD_MAP] = COMPUTE_ENTRY(&&entry_MP_BC_BUILD_MAP),
- [MP_BC_STORE_MAP] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_MAP),
+ [0 ... 255] = COMPUTE_ENTRY(&& entry_default),
+ [MP_BC_LOAD_CONST_FALSE] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_FALSE),
+ [MP_BC_LOAD_CONST_NONE] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_NONE),
+ [MP_BC_LOAD_CONST_TRUE] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_TRUE),
+ [MP_BC_LOAD_CONST_SMALL_INT] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_SMALL_INT),
+ [MP_BC_LOAD_CONST_STRING] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_STRING),
+ [MP_BC_LOAD_CONST_OBJ] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_OBJ),
+ [MP_BC_LOAD_NULL] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_NULL),
+ [MP_BC_LOAD_FAST_N] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_FAST_N),
+ [MP_BC_LOAD_DEREF] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_DEREF),
+ [MP_BC_LOAD_NAME] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_NAME),
+ [MP_BC_LOAD_GLOBAL] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_GLOBAL),
+ [MP_BC_LOAD_ATTR] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_ATTR),
+ [MP_BC_LOAD_METHOD] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_METHOD),
+ [MP_BC_LOAD_SUPER_METHOD] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_SUPER_METHOD),
+ [MP_BC_LOAD_BUILD_CLASS] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_BUILD_CLASS),
+ [MP_BC_LOAD_SUBSCR] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_SUBSCR),
+ [MP_BC_STORE_FAST_N] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_FAST_N),
+ [MP_BC_STORE_DEREF] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_DEREF),
+ [MP_BC_STORE_NAME] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_NAME),
+ [MP_BC_STORE_GLOBAL] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_GLOBAL),
+ [MP_BC_STORE_ATTR] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_ATTR),
+ [MP_BC_STORE_SUBSCR] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_SUBSCR),
+ [MP_BC_DELETE_FAST] = COMPUTE_ENTRY(&& entry_MP_BC_DELETE_FAST),
+ [MP_BC_DELETE_DEREF] = COMPUTE_ENTRY(&& entry_MP_BC_DELETE_DEREF),
+ [MP_BC_DELETE_NAME] = COMPUTE_ENTRY(&& entry_MP_BC_DELETE_NAME),
+ [MP_BC_DELETE_GLOBAL] = COMPUTE_ENTRY(&& entry_MP_BC_DELETE_GLOBAL),
+ [MP_BC_DUP_TOP] = COMPUTE_ENTRY(&& entry_MP_BC_DUP_TOP),
+ [MP_BC_DUP_TOP_TWO] = COMPUTE_ENTRY(&& entry_MP_BC_DUP_TOP_TWO),
+ [MP_BC_POP_TOP] = COMPUTE_ENTRY(&& entry_MP_BC_POP_TOP),
+ [MP_BC_ROT_TWO] = COMPUTE_ENTRY(&& entry_MP_BC_ROT_TWO),
+ [MP_BC_ROT_THREE] = COMPUTE_ENTRY(&& entry_MP_BC_ROT_THREE),
+ [MP_BC_JUMP] = COMPUTE_ENTRY(&& entry_MP_BC_JUMP),
+ [MP_BC_POP_JUMP_IF_TRUE] = COMPUTE_ENTRY(&& entry_MP_BC_POP_JUMP_IF_TRUE),
+ [MP_BC_POP_JUMP_IF_FALSE] = COMPUTE_ENTRY(&& entry_MP_BC_POP_JUMP_IF_FALSE),
+ [MP_BC_JUMP_IF_TRUE_OR_POP] = COMPUTE_ENTRY(&& entry_MP_BC_JUMP_IF_TRUE_OR_POP),
+ [MP_BC_JUMP_IF_FALSE_OR_POP] = COMPUTE_ENTRY(&& entry_MP_BC_JUMP_IF_FALSE_OR_POP),
+ [MP_BC_SETUP_WITH] = COMPUTE_ENTRY(&& entry_MP_BC_SETUP_WITH),
+ [MP_BC_WITH_CLEANUP] = COMPUTE_ENTRY(&& entry_MP_BC_WITH_CLEANUP),
+ [MP_BC_UNWIND_JUMP] = COMPUTE_ENTRY(&& entry_MP_BC_UNWIND_JUMP),
+ [MP_BC_SETUP_EXCEPT] = COMPUTE_ENTRY(&& entry_MP_BC_SETUP_EXCEPT),
+ [MP_BC_SETUP_FINALLY] = COMPUTE_ENTRY(&& entry_MP_BC_SETUP_FINALLY),
+ [MP_BC_END_FINALLY] = COMPUTE_ENTRY(&& entry_MP_BC_END_FINALLY),
+ [MP_BC_GET_ITER] = COMPUTE_ENTRY(&& entry_MP_BC_GET_ITER),
+ [MP_BC_GET_ITER_STACK] = COMPUTE_ENTRY(&& entry_MP_BC_GET_ITER_STACK),
+ [MP_BC_FOR_ITER] = COMPUTE_ENTRY(&& entry_MP_BC_FOR_ITER),
+ [MP_BC_POP_BLOCK] = COMPUTE_ENTRY(&& entry_MP_BC_POP_BLOCK),
+ [MP_BC_POP_EXCEPT] = COMPUTE_ENTRY(&& entry_MP_BC_POP_EXCEPT),
+ [MP_BC_BUILD_TUPLE] = COMPUTE_ENTRY(&& entry_MP_BC_BUILD_TUPLE),
+ [MP_BC_BUILD_LIST] = COMPUTE_ENTRY(&& entry_MP_BC_BUILD_LIST),
+ [MP_BC_BUILD_MAP] = COMPUTE_ENTRY(&& entry_MP_BC_BUILD_MAP),
+ [MP_BC_STORE_MAP] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_MAP),
#if MICROPY_PY_BUILTINS_SET
- [MP_BC_BUILD_SET] = COMPUTE_ENTRY(&&entry_MP_BC_BUILD_SET),
+ [MP_BC_BUILD_SET] = COMPUTE_ENTRY(&& entry_MP_BC_BUILD_SET),
#endif
#if MICROPY_PY_BUILTINS_SLICE
- [MP_BC_BUILD_SLICE] = COMPUTE_ENTRY(&&entry_MP_BC_BUILD_SLICE),
+ [MP_BC_BUILD_SLICE] = COMPUTE_ENTRY(&& entry_MP_BC_BUILD_SLICE),
#endif
- [MP_BC_STORE_COMP] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_COMP),
- [MP_BC_UNPACK_SEQUENCE] = COMPUTE_ENTRY(&&entry_MP_BC_UNPACK_SEQUENCE),
- [MP_BC_UNPACK_EX] = COMPUTE_ENTRY(&&entry_MP_BC_UNPACK_EX),
- [MP_BC_MAKE_FUNCTION] = COMPUTE_ENTRY(&&entry_MP_BC_MAKE_FUNCTION),
- [MP_BC_MAKE_FUNCTION_DEFARGS] = COMPUTE_ENTRY(&&entry_MP_BC_MAKE_FUNCTION_DEFARGS),
- [MP_BC_MAKE_CLOSURE] = COMPUTE_ENTRY(&&entry_MP_BC_MAKE_CLOSURE),
- [MP_BC_MAKE_CLOSURE_DEFARGS] = COMPUTE_ENTRY(&&entry_MP_BC_MAKE_CLOSURE_DEFARGS),
- [MP_BC_CALL_FUNCTION] = COMPUTE_ENTRY(&&entry_MP_BC_CALL_FUNCTION),
- [MP_BC_CALL_FUNCTION_VAR_KW] = COMPUTE_ENTRY(&&entry_MP_BC_CALL_FUNCTION_VAR_KW),
- [MP_BC_CALL_METHOD] = COMPUTE_ENTRY(&&entry_MP_BC_CALL_METHOD),
- [MP_BC_CALL_METHOD_VAR_KW] = COMPUTE_ENTRY(&&entry_MP_BC_CALL_METHOD_VAR_KW),
- [MP_BC_RETURN_VALUE] = COMPUTE_ENTRY(&&entry_MP_BC_RETURN_VALUE),
- [MP_BC_RAISE_VARARGS] = COMPUTE_ENTRY(&&entry_MP_BC_RAISE_VARARGS),
- [MP_BC_YIELD_VALUE] = COMPUTE_ENTRY(&&entry_MP_BC_YIELD_VALUE),
- [MP_BC_YIELD_FROM] = COMPUTE_ENTRY(&&entry_MP_BC_YIELD_FROM),
- [MP_BC_IMPORT_NAME] = COMPUTE_ENTRY(&&entry_MP_BC_IMPORT_NAME),
- [MP_BC_IMPORT_FROM] = COMPUTE_ENTRY(&&entry_MP_BC_IMPORT_FROM),
- [MP_BC_IMPORT_STAR] = COMPUTE_ENTRY(&&entry_MP_BC_IMPORT_STAR),
- [MP_BC_LOAD_CONST_SMALL_INT_MULTI ... MP_BC_LOAD_CONST_SMALL_INT_MULTI + 63] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_CONST_SMALL_INT_MULTI),
- [MP_BC_LOAD_FAST_MULTI ... MP_BC_LOAD_FAST_MULTI + 15] = COMPUTE_ENTRY(&&entry_MP_BC_LOAD_FAST_MULTI),
- [MP_BC_STORE_FAST_MULTI ... MP_BC_STORE_FAST_MULTI + 15] = COMPUTE_ENTRY(&&entry_MP_BC_STORE_FAST_MULTI),
- [MP_BC_UNARY_OP_MULTI ... MP_BC_UNARY_OP_MULTI + MP_UNARY_OP_NUM_BYTECODE - 1] = COMPUTE_ENTRY(&&entry_MP_BC_UNARY_OP_MULTI),
- [MP_BC_BINARY_OP_MULTI ... MP_BC_BINARY_OP_MULTI + MP_BINARY_OP_NUM_BYTECODE - 1] = COMPUTE_ENTRY(&&entry_MP_BC_BINARY_OP_MULTI),
+ [MP_BC_STORE_COMP] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_COMP),
+ [MP_BC_UNPACK_SEQUENCE] = COMPUTE_ENTRY(&& entry_MP_BC_UNPACK_SEQUENCE),
+ [MP_BC_UNPACK_EX] = COMPUTE_ENTRY(&& entry_MP_BC_UNPACK_EX),
+ [MP_BC_MAKE_FUNCTION] = COMPUTE_ENTRY(&& entry_MP_BC_MAKE_FUNCTION),
+ [MP_BC_MAKE_FUNCTION_DEFARGS] = COMPUTE_ENTRY(&& entry_MP_BC_MAKE_FUNCTION_DEFARGS),
+ [MP_BC_MAKE_CLOSURE] = COMPUTE_ENTRY(&& entry_MP_BC_MAKE_CLOSURE),
+ [MP_BC_MAKE_CLOSURE_DEFARGS] = COMPUTE_ENTRY(&& entry_MP_BC_MAKE_CLOSURE_DEFARGS),
+ [MP_BC_CALL_FUNCTION] = COMPUTE_ENTRY(&& entry_MP_BC_CALL_FUNCTION),
+ [MP_BC_CALL_FUNCTION_VAR_KW] = COMPUTE_ENTRY(&& entry_MP_BC_CALL_FUNCTION_VAR_KW),
+ [MP_BC_CALL_METHOD] = COMPUTE_ENTRY(&& entry_MP_BC_CALL_METHOD),
+ [MP_BC_CALL_METHOD_VAR_KW] = COMPUTE_ENTRY(&& entry_MP_BC_CALL_METHOD_VAR_KW),
+ [MP_BC_RETURN_VALUE] = COMPUTE_ENTRY(&& entry_MP_BC_RETURN_VALUE),
+ [MP_BC_RAISE_VARARGS] = COMPUTE_ENTRY(&& entry_MP_BC_RAISE_VARARGS),
+ [MP_BC_YIELD_VALUE] = COMPUTE_ENTRY(&& entry_MP_BC_YIELD_VALUE),
+ [MP_BC_YIELD_FROM] = COMPUTE_ENTRY(&& entry_MP_BC_YIELD_FROM),
+ [MP_BC_IMPORT_NAME] = COMPUTE_ENTRY(&& entry_MP_BC_IMPORT_NAME),
+ [MP_BC_IMPORT_FROM] = COMPUTE_ENTRY(&& entry_MP_BC_IMPORT_FROM),
+ [MP_BC_IMPORT_STAR] = COMPUTE_ENTRY(&& entry_MP_BC_IMPORT_STAR),
+ [MP_BC_LOAD_CONST_SMALL_INT_MULTI ... MP_BC_LOAD_CONST_SMALL_INT_MULTI + 63] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_CONST_SMALL_INT_MULTI),
+ [MP_BC_LOAD_FAST_MULTI ... MP_BC_LOAD_FAST_MULTI + 15] = COMPUTE_ENTRY(&& entry_MP_BC_LOAD_FAST_MULTI),
+ [MP_BC_STORE_FAST_MULTI ... MP_BC_STORE_FAST_MULTI + 15] = COMPUTE_ENTRY(&& entry_MP_BC_STORE_FAST_MULTI),
+ [MP_BC_UNARY_OP_MULTI ... MP_BC_UNARY_OP_MULTI + MP_UNARY_OP_NUM_BYTECODE - 1] = COMPUTE_ENTRY(&& entry_MP_BC_UNARY_OP_MULTI),
+ [MP_BC_BINARY_OP_MULTI ... MP_BC_BINARY_OP_MULTI + MP_BINARY_OP_NUM_BYTECODE - 1] = COMPUTE_ENTRY(&& entry_MP_BC_BINARY_OP_MULTI),
};
#ifdef __clang__
diff --git a/py/vstr.c b/py/vstr.c
index ccc567d10..2b78fc5c8 100644
--- a/py/vstr.c
+++ b/py/vstr.c
@@ -50,7 +50,7 @@ void vstr_init(vstr_t *vstr, size_t alloc) {
// Init the vstr so it allocs exactly enough ram to hold a null-terminated
// string of the given length, and set the length.
void vstr_init_len(vstr_t *vstr, size_t len) {
- if(len == SIZE_MAX) {
+ if (len == SIZE_MAX) {
m_malloc_fail(len);
}
vstr_init(vstr, len + 1);
@@ -142,37 +142,37 @@ char *vstr_null_terminated_str(vstr_t *vstr) {
}
void vstr_add_byte(vstr_t *vstr, byte b) {
- byte *buf = (byte*)vstr_add_len(vstr, 1);
+ byte *buf = (byte *)vstr_add_len(vstr, 1);
buf[0] = b;
}
void vstr_add_char(vstr_t *vstr, unichar c) {
-#if MICROPY_PY_BUILTINS_STR_UNICODE
+ #if MICROPY_PY_BUILTINS_STR_UNICODE
// TODO: Can this be simplified and deduplicated?
// Is it worth just calling vstr_add_len(vstr, 4)?
if (c < 0x80) {
- byte *buf = (byte*)vstr_add_len(vstr, 1);
+ byte *buf = (byte *)vstr_add_len(vstr, 1);
*buf = (byte)c;
} else if (c < 0x800) {
- byte *buf = (byte*)vstr_add_len(vstr, 2);
+ byte *buf = (byte *)vstr_add_len(vstr, 2);
buf[0] = (c >> 6) | 0xC0;
buf[1] = (c & 0x3F) | 0x80;
} else if (c < 0x10000) {
- byte *buf = (byte*)vstr_add_len(vstr, 3);
+ byte *buf = (byte *)vstr_add_len(vstr, 3);
buf[0] = (c >> 12) | 0xE0;
buf[1] = ((c >> 6) & 0x3F) | 0x80;
buf[2] = (c & 0x3F) | 0x80;
} else {
assert(c < 0x110000);
- byte *buf = (byte*)vstr_add_len(vstr, 4);
+ byte *buf = (byte *)vstr_add_len(vstr, 4);
buf[0] = (c >> 18) | 0xF0;
buf[1] = ((c >> 12) & 0x3F) | 0x80;
buf[2] = ((c >> 6) & 0x3F) | 0x80;
buf[3] = (c & 0x3F) | 0x80;
}
-#else
+ #else
vstr_add_byte(vstr, c);
-#endif
+ #endif
}
void vstr_add_str(vstr_t *vstr, const char *str) {