micropython/py
Damien George 98a3911c43 py/scheduler: Add "raise_exc" argument to mp_handle_pending.
Previous behaviour is when this argument is set to "true", in which case
the function will raise any pending exception.  Setting it to "false" will
cancel any pending exception.
2020-02-07 16:08:20 +11:00
..
argcheck.c py: Shorten error messages by using contractions and some rewording. 2018-09-20 14:33:10 +10:00
asmarm.c py/asmarm: Use __builtin___clear_cache instead of __clear_cache. 2019-07-12 16:48:37 +10:00
asmarm.h py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmbase.c py: Define EMIT_MACHINE_CODE as EMIT_NATIVE || EMIT_INLINE_ASM. 2019-06-28 13:54:45 +10:00
asmbase.h py/persistentcode: Add ability to relocate loaded native code. 2019-12-12 20:15:28 +11:00
asmthumb.c py/asmthumb: Support asm_thumb code running on normal ARM processors. 2019-05-01 15:24:21 +10:00
asmthumb.h py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmx64.c py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmx64.h py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmx86.c py/asmx86: Remove unused 5th argument facility. 2019-12-27 12:30:51 +11:00
asmx86.h py/asmx86: Remove unused 5th argument facility. 2019-12-27 12:30:51 +11:00
asmxtensa.c py: Add new Xtensa-Windowed arch for native emitter. 2019-10-05 13:44:53 +10:00
asmxtensa.h py/asmxtensa: Add support for Xtensa with windowed registers. 2019-10-05 13:44:08 +10:00
bc.c py/bc: Don't include mp_decode_uint funcs when not needed. 2019-10-01 12:26:22 +10:00
bc.h py/persistentcode: Add ability to relocate loaded native code. 2019-12-12 20:15:28 +11:00
bc0.h py: Split RAISE_VARARGS opcode into 3 separate ones. 2019-09-26 15:39:50 +10:00
binary.c py/binary: Change mp_uint_t to size_t for index, size, align args. 2019-09-02 13:14:27 +10:00
binary.h py/binary: Change mp_uint_t to size_t for index, size, align args. 2019-09-02 13:14:27 +10:00
builtin.h extmod/modbluetooth: Rename module to "ubluetooth". 2019-10-22 21:58:05 +11:00
builtinevex.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
builtinhelp.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
builtinimport.c py/builtinimport: Raise exception on empty module name. 2019-11-26 00:28:32 +11:00
compile.c py/compile: Allow 'return' outside function in minimal builds. 2020-02-06 00:41:55 +11:00
compile.h py: Add global default_emit_opt variable to make emit kind persistent. 2019-08-28 12:47:58 +10:00
dynruntime.h py/dynruntime: Implement uint new/get, mp_obj_len and mp_obj_subscr. 2019-12-13 13:29:11 +11:00
dynruntime.mk py/dynruntime: Add support for float API to make/get floats. 2019-12-12 20:15:28 +11:00
emit.h py: Add new Xtensa-Windowed arch for native emitter. 2019-10-05 13:44:53 +10:00
emitbc.c py: Remove commented-out debug printf's from emitbc and objlist. 2019-12-20 23:34:46 +11:00
emitcommon.c py/scope: Optimise scope_find_or_add_id to not need "added" arg. 2018-10-28 00:38:18 +11:00
emitglue.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
emitglue.h py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
emitinlinethumb.c py/compile: Support multiple inline asm emitters. 2019-03-14 12:22:25 +11:00
emitinlinextensa.c py/compile: Support multiple inline asm emitters. 2019-03-14 12:22:25 +11:00
emitnarm.c py/emitnative: Add support for return/break/continue in try and with. 2018-09-04 14:31:28 +10:00
emitnative.c py/emitnative: Stop after finding an unwind target. 2020-01-27 13:22:03 +11:00
emitnthumb.c py/emitnative: Add support for return/break/continue in try and with. 2018-09-04 14:31:28 +10:00
emitnx64.c py/emitnative: Add support for return/break/continue in try and with. 2018-09-04 14:31:28 +10:00
emitnx86.c py/nativeglue: Add new header file with native function table typedef. 2019-12-12 20:15:28 +11:00
emitnxtensa.c py/emitnative: Add support for return/break/continue in try and with. 2018-09-04 14:31:28 +10:00
emitnxtensawin.c py: Add new Xtensa-Windowed arch for native emitter. 2019-10-05 13:44:53 +10:00
formatfloat.c py/formatfloat: Fix case where floats could render with negative digits. 2018-03-01 17:00:02 +11:00
formatfloat.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
frozenmod.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
frozenmod.h various: Update early copyright years to match actual edit history. 2019-05-17 18:06:11 +10:00
gc.c py/gc: Don't include or init gc_mutex when GIL is enabled. 2020-01-23 13:28:42 +11:00
gc.h py/gc: Adjust gc_alloc() signature to be able to accept multiple flags. 2018-12-20 17:52:16 +11:00
grammar.h py: Add support for matmul operator @ as per PEP 465. 2019-09-26 15:12:39 +10:00
lexer.c py: Add support for matmul operator @ as per PEP 465. 2019-09-26 15:12:39 +10:00
lexer.h py: Remove 3 obsolete commented-out lines from header files. 2019-11-26 21:36:41 +11:00
makemoduledefs.py py/makedefs: Use io.open with utf-8 encoding when processing source. 2019-04-12 11:34:52 +10:00
makeqstrdata.py py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
makeqstrdefs.py py/makeqstrdefs.py: Remove unused blacklist. 2019-10-04 17:18:56 +10:00
makeversionhdr.py py/mpconfig: Move MICROPY_VERSION macros to static ones in mpconfig.h. 2018-12-22 01:40:38 +11:00
malloc.c py/malloc: Give a compile warning if using finaliser without GC. 2018-07-09 14:40:02 +10:00
map.c py: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
misc.h py/unicode: Add unichar_isalnum(). 2020-01-12 13:03:57 +11:00
mkenv.mk py/mkenv.mk: Move usage of 32-bit flags to py.mk. 2020-01-12 10:34:10 +11:00
mkrules.mk py/mkrules.mk: Add warning/error for invalid frozen config. 2019-10-21 23:21:04 +11:00
modarray.c py/modarray: Rename "array" module to "uarray". 2019-10-22 16:35:46 +11:00
modbuiltins.c py: Clean up commented-out code and comments about exception hierarchy. 2019-12-28 01:01:36 +11:00
modcmath.c py: Change obsolete "///" comment formatting to normal comments. 2017-08-30 21:02:00 +10:00
modcollections.c py/objdeque: Implement ucollections.deque type with fixed size. 2018-02-21 22:39:25 +11:00
modgc.c py: Change obsolete "///" comment formatting to normal comments. 2017-08-30 21:02:00 +10:00
modio.c py/modio: Call mp_import_name to do resource stream import. 2019-07-31 22:37:44 +10:00
modmath.c py/modmath: Implement math.isclose() for non-complex numbers. 2019-08-17 23:23:17 +10:00
modmicropython.c py/scheduler: Rename sched_stack to sched_queue. 2019-07-17 16:09:32 +10:00
modstruct.c py/binary: Change mp_uint_t to size_t for index, size, align args. 2019-09-02 13:14:27 +10:00
modsys.c py/modsys: Report .mpy version in sys.implementation. 2019-11-04 16:00:41 +11:00
modthread.c py/modthread: Fix spelling error in comment. 2020-01-31 23:57:25 +11:00
moduerrno.c py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
mpconfig.h py/mpconfig.h: Define BITS_PER_BYTE only if not already defined. 2020-01-12 20:57:01 +02:00
mperrno.h py/mperrno: Define MP_EWOULDBLOCK as EWOULDBLOCK, not EAGAIN. 2018-05-01 15:53:25 +10:00
mphal.h lib/utils/sys_stdio_mphal: Add support to poll sys.stdin and sys.stdout. 2019-07-01 17:10:12 +10:00
mpprint.c py/mpprint: Support printing %ld and %lu formats on 64-bit archs. 2019-04-23 12:40:15 +10:00
mpprint.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
mpstate.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
mpstate.h py/qstr: Don't include or init qstr_mutex when GIL is enabled. 2020-01-23 13:29:11 +11:00
mpthread.h py/mpthread.h: Use strong type for mp_thread_set_state() argument. 2020-01-29 17:10:32 +11:00
mpz.c py/mpz: Avoid undefined behavior at integer overflow in mpz_hash. 2018-05-21 12:48:26 +10:00
mpz.h py/mpz: Simplify handling of borrow and quo adjustment in mpn_div. 2017-12-29 14:05:48 +11:00
nativeglue.c py/nativeglue: Fix typo about where the native fun table enum is. 2020-01-27 13:22:19 +11:00
nativeglue.h py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
nlr.c py/nlr: Fix missing trailing characters in comments in nlr.c 2017-12-29 22:24:53 +11:00
nlr.h powerpc: Add initial port to bare metal PowerPC arch. 2019-10-22 22:45:33 +11:00
nlrpowerpc.c powerpc: Add initial port to bare metal PowerPC arch. 2019-10-22 22:45:33 +11:00
nlrsetjmp.c py/nlr: Factor out common NLR code to macro and generic funcs in nlr.c. 2017-12-28 16:46:30 +11:00
nlrthumb.c py: Introduce MP_UNREACHABLE macro to annotate unreachable code. 2019-08-19 16:14:33 +10:00
nlrx64.c py/nlr: Use MP_UNREACHABLE at the end of arch-specific nlr_jump funcs. 2019-08-19 16:14:57 +10:00
nlrx86.c py/nlrx86: Silence possible warnings about unused nlr argument. 2019-12-23 00:07:03 +11:00
nlrxtensa.c py/nlr: Use MP_UNREACHABLE at the end of arch-specific nlr_jump funcs. 2019-08-19 16:14:57 +10:00
obj.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
obj.h py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objarray.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objarray.h py/objarray: Introduce "memview_offset" alias for "free" field of object 2018-12-20 17:40:48 +11:00
objattrtuple.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
objbool.c py/obj: Add MICROPY_OBJ_IMMEDIATE_OBJS option to reduce code size. 2020-01-13 01:01:45 +11:00
objboundmeth.c py/objboundmeth: Support loading generic attrs from the method. 2018-12-06 18:02:41 +11:00
objcell.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
objclosure.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
objcomplex.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objdeque.c py/objdeque: Fix sign extension bug when computing len of deque object. 2018-05-11 13:44:50 +10:00
objdict.c py/objdict: Support ujson.dump() of OrderedDict objects. 2019-11-13 13:51:18 +11:00
objenumerate.c py/objenumerate: Check for valid args in enumerate constructor. 2019-12-09 14:28:24 +11:00
objexcept.c py/objexcept: Optimise mp_obj_new_exception[_arg1/_args] functions. 2020-01-23 13:37:25 +11:00
objexcept.h py/objexcept: Make MP_DEFINE_EXCEPTION public so ports can define excs. 2018-03-17 00:31:40 +11:00
objfilter.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objfloat.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objfun.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
objfun.h py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
objgenerator.c py/objgenerator: Use mp_obj_new_exception_arg1 to make StopIteration. 2020-01-23 13:37:25 +11:00
objgenerator.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
objgetitemiter.c all: Remove inclusion of internal py header files. 2017-10-04 12:37:50 +11:00
objint.c all: Convert nlr_raise(mp_obj_new_exception_msg(x)) to mp_raise_msg(x). 2019-11-05 11:35:45 +11:00
objint.h py/modbuiltins: Implement abs() by dispatching to MP_UNARY_OP_ABS. 2017-09-18 00:06:43 +03:00
objint_longlong.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objint_mpz.c py/objint: Add mp_obj_int_get_uint_checked() helper. 2020-01-14 23:35:22 +11:00
objlist.c py: Introduce MP_ROM_NONE macro for ROM to refer to None object. 2019-12-27 22:51:17 +11:00
objlist.h py/obj.h: Move declaration of mp_obj_list_init to objlist.h. 2018-03-13 14:03:15 +11:00
objmap.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objmodule.c extmod/modbluetooth: Rename module to "ubluetooth". 2019-10-22 21:58:05 +11:00
objmodule.h py: Automatically provide weak links from "foo" to "ufoo" module name. 2019-10-22 15:30:52 +11:00
objnamedtuple.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objnamedtuple.h py/objnamedtuple: Allow to reuse namedtuple basic functionality. 2017-11-20 09:30:06 +02:00
objnone.c py/obj: Add MICROPY_OBJ_IMMEDIATE_OBJS option to reduce code size. 2020-01-13 01:01:45 +11:00
objobject.c py/objobject: Fix __setattr__/__delattr__ to build in nanbox mode. 2019-12-27 22:54:53 +11:00
objpolyiter.c all: Remove inclusion of internal py header files. 2017-10-04 12:37:50 +11:00
objproperty.c py: Introduce MP_ROM_NONE macro for ROM to refer to None object. 2019-12-27 22:51:17 +11:00
objrange.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objreversed.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objset.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objsingleton.c py/objsingleton: Use mp_generic_unary_op for singleton objects. 2019-12-27 12:53:36 +11:00
objslice.c py/objslice: Inline fetching of slice paramters in str_subscr(). 2019-12-29 00:06:02 +11:00
objstr.c py/obj.h: Add and use mp_obj_is_bool() helper. 2020-01-24 10:53:45 +11:00
objstr.h py/objstr: Don't use inline GET_STR_DATA_LEN for object-repr D. 2019-12-27 23:15:52 +11:00
objstringio.c py/objstringio: Slightly optimize stringio_copy_on_write for code size. 2019-11-26 14:26:24 +11:00
objstringio.h py/objstringio: If created from immutable object, follow copy on write policy. 2017-06-09 17:33:01 +03:00
objstrunicode.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
objtuple.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
objtuple.h all: Convert mp_uint_t to mp_unary_op_t/mp_binary_op_t where appropriate 2017-08-29 13:16:30 +10:00
objtype.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
objtype.h py/runtime: Don't allocate iter buf for user-defined types. 2019-12-27 12:34:22 +11:00
objzip.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
opmethods.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
pairheap.c py/pairheap: Add generic implementation of pairing heap data structure. 2020-01-22 17:31:18 +11:00
pairheap.h py/pairheap: Add generic implementation of pairing heap data structure. 2020-01-22 17:31:18 +11:00
parse.c py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
parse.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
parsenum.c py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
parsenum.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
parsenumbase.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
parsenumbase.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
persistentcode.c py: Release GIL during syscalls in reader and writer code. 2020-01-26 23:26:31 +11:00
persistentcode.h py/persistentcode: Make ARM Thumb archs support multiple sub-archs. 2019-12-12 20:15:28 +11:00
profile.c py/profile: Fix debug opcode decoding of MP_BC_RAISE_xxx opcodes. 2019-12-20 14:57:44 +11:00
profile.h py/profile: Add debugging for sys.settrace feature. 2019-08-30 16:48:47 +10:00
py.mk py/pairheap: Add generic implementation of pairing heap data structure. 2020-01-22 17:31:18 +11:00
pystack.c py/pystack: Use "pystack exhausted" as error msg for out of pystack mem. 2018-02-19 00:26:14 +11:00
pystack.h py: Introduce a Python stack for scoped allocation. 2017-12-11 13:49:09 +11:00
qstr.c py/qstr: Don't include or init qstr_mutex when GIL is enabled. 2020-01-23 13:29:11 +11:00
qstr.h py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
qstrdefs.h py/modbuiltins: Make oct/hex work when !MICROPY_PY_BUILTINS_STR_OP_MODULO 2018-09-20 14:41:35 +10:00
reader.c py: Release GIL during syscalls in reader and writer code. 2020-01-26 23:26:31 +11:00
reader.h py: Allow lexer to raise exceptions during construction. 2017-03-14 11:52:05 +11:00
repl.c py: Rename MP_QSTR_NULL to MP_QSTRnull to avoid intern collisions. 2019-09-26 16:04:56 +10:00
repl.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
ringbuf.c py/ringbuf: Add peek16 method. 2019-11-21 12:04:53 +11:00
ringbuf.h py/ringbuf: Add peek16 method. 2019-11-21 12:04:53 +11:00
runtime.c py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
runtime.h py/scheduler: Add "raise_exc" argument to mp_handle_pending. 2020-02-07 16:08:20 +11:00
runtime0.h py/nativeglue: Add new header file with native function table typedef. 2019-12-12 20:15:28 +11:00
runtime_utils.c py: mp_call_function_*_protected(): Pass-thru return value if possible. 2017-12-05 00:38:41 +02:00
scheduler.c py/scheduler: Add "raise_exc" argument to mp_handle_pending. 2020-02-07 16:08:20 +11:00
scope.c py/scope: Optimise scope_find_or_add_id to not need "added" arg. 2018-10-28 00:38:18 +11:00
scope.h py/scope: Optimise scope_find_or_add_id to not need "added" arg. 2018-10-28 00:38:18 +11:00
sequence.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
showbc.c py: Rework and compress second part of bytecode prelude. 2019-10-01 12:26:22 +10:00
smallint.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
smallint.h py: Extend nan-boxing config to have 47-bit small integers. 2017-12-11 22:39:12 +11:00
stackctrl.c py/runtime: Move mp_exc_recursion_depth to runtime and rename to raise. 2017-12-11 13:49:09 +11:00
stackctrl.h all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
stream.c py: Make mp_obj_get_type() return a const ptr to mp_obj_type_t. 2020-01-09 11:25:26 +11:00
stream.h py/stream.h: Add MP_STREAM_POLL_NVAL constant. 2019-10-31 12:54:37 +11:00
unicode.c py/unicode: Add unichar_isalnum(). 2020-01-12 13:03:57 +11:00
unicode.h py/objstr: Add check for valid UTF-8 when making a str from bytes. 2017-09-06 16:43:09 +10:00
vm.c py/vm: Fix comment to refer to MP_BC_RAISE_OBJ instead of RAISE_VARARGS. 2019-12-20 14:57:06 +11:00
vmentrytable.h py: Split RAISE_VARARGS opcode into 3 separate ones. 2019-09-26 15:39:50 +10:00
vstr.c various: Add and update my copyright line based on git history. 2019-05-17 18:04:15 +10:00
warning.c py: Update my copyright info on some files. 2019-02-06 00:19:00 +11:00