micropython/py
Damien George 8f064e469d py/emitbc: Fix bug with BC emitter computing Python stack size.
Previous to this patch the mp_emit_bc_adjust_stack_size function would
adjust the current stack size but would not increase the maximum stack size
if the current size went above it.  This meant that certain Python code
(eg a try-finally block with no statements inside it) would not have enough
Python stack allocated to it.

This patch fixes the problem by always checking if the current stack size
goes above the maximum, and adjusting the latter if it does.
2017-05-25 20:42:30 +10:00
..
argcheck.c py: Use mp_raise_TypeError/mp_raise_ValueError helpers where possible. 2017-03-28 22:37:26 +11:00
asmarm.c
asmarm.h
asmbase.c
asmbase.h
asmthumb.c
asmthumb.h
asmx64.c
asmx64.h
asmx86.c
asmx86.h
asmxtensa.c
asmxtensa.h
bc.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
bc.h py: Provide mp_decode_uint_value to help optimise stack usage. 2017-03-17 16:50:19 +11:00
bc0.h py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
binary.c py/binary: Handle storing big-ints to all arrays types. 2017-05-09 10:41:00 +10:00
binary.h
builtin.h
builtinevex.c py: Change mp_uint_t to size_t for mp_obj_str_get_data len arg. 2017-03-29 12:56:45 +11:00
builtinhelp.c
builtinimport.c unix/main: Implement -m option for packages. 2017-05-09 14:22:21 +03:00
compile.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
compile.h
emit.h py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
emitbc.c py/emitbc: Fix bug with BC emitter computing Python stack size. 2017-05-25 20:42:30 +10:00
emitcommon.c
emitglue.c
emitglue.h
emitinlinethumb.c py: Create str/bytes objects in the parser, not the compiler. 2017-02-24 13:43:43 +11:00
emitinlinextensa.c
emitnative.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
formatfloat.c
formatfloat.h
frozenmod.c py/modio: Implement uio.resource_stream(package, resource_path). 2017-05-03 01:47:08 +03:00
frozenmod.h py/modio: Implement uio.resource_stream(package, resource_path). 2017-05-03 01:47:08 +03:00
gc.c py/gc: Execute finaliser code in a protected environment. 2017-04-12 13:52:04 +10:00
gc.h
grammar.h py/compile: Refactor handling of special super() call. 2017-04-22 21:46:32 +10:00
lexer.c py/lexer: Process CR earlier to allow newlines checks on chr1. 2017-05-12 15:14:24 +10:00
lexer.h py/lexer: Convert mp_uint_t to size_t where appropriate. 2017-02-17 12:44:24 +11:00
makeqstrdata.py
makeqstrdefs.py
makeversionhdr.py
malloc.c
map.c py/map: Fix bugs with deletion of elements from OrderedDict. 2017-03-03 11:21:19 +11:00
misc.h
mkenv.mk py/mkenv.mk: Use $(TOP) instead of ".." to reference tools, mpy-cross. 2017-05-19 15:53:55 +10:00
mkrules.mk py/mkrules.mk: Add dependency of .mpy files upon mpy-cross. 2017-05-11 23:40:16 +10:00
modarray.c
modbuiltins.c py/modsys: update conditionals for code referencing sys.stdout 2017-05-14 18:24:50 +03:00
modcmath.c
modcollections.c
modgc.c
modio.c py/modio: resource_stream: Implement "package" param handling. 2017-05-06 18:42:35 +03:00
modmath.c py/modmath: Allow trunc/ceil/floor to return a big int if necessary. 2017-03-23 22:57:08 +11:00
modmicropython.c py/modmicropython: Add micropython.kbd_intr() function. 2017-04-18 17:24:30 +10:00
modstruct.c
modsys.c py/modsys: update conditionals for code referencing sys.stdout 2017-05-14 18:24:50 +03:00
modthread.c py: Convert mp_uint_t to size_t for tuple/list accessors. 2017-03-29 12:56:17 +11:00
moduerrno.c py/moduerrno: Make list of errno codes configurable. 2017-02-22 12:58:11 +11:00
mpconfig.h py/modio: Implement uio.resource_stream(package, resource_path). 2017-05-03 01:47:08 +03:00
mperrno.h
mphal.h
mpprint.c py/mpprint: Fix int formatting so "+" is printed for 0-valued integer. 2017-03-15 17:25:12 +11:00
mpprint.h py/modsys: update conditionals for code referencing sys.stdout 2017-05-14 18:24:50 +03:00
mpstate.c
mpstate.h py: Make sure that static emg-exc-buffer is aligned to size of mp_obj_t. 2017-04-10 16:02:56 +10:00
mpthread.h
mpz.c py/mpz: In mpn_sub, use existing function to remove trailing zeros. 2017-04-25 12:22:04 +10:00
mpz.h py/mpz: Change type of "base" args from mp_uint_t to unsigned int. 2017-02-16 16:51:16 +11:00
nativeglue.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
nlr.h py: Cleanup use of global DEBUG preprocessor definition 2017-04-30 14:28:37 +03:00
nlrsetjmp.c py/nlrsetjmp: Add check for failed NLR jump. 2017-04-12 13:50:31 +10:00
nlrthumb.c
nlrx64.c py/nlrx64: Fixes to support Mac OS. 2017-03-08 22:36:02 +11:00
nlrx86.c py/nlrx86: Better check for Zephyr (requires 1.7). 2017-03-26 00:33:23 +03:00
nlrxtensa.c py/nlrxtensa: Convert from assembler to C file with inline asm. 2017-03-06 17:13:16 +11:00
obj.c py: Convert mp_uint_t to size_t for tuple/list accessors. 2017-03-29 12:56:17 +11:00
obj.h py/objtype: mp_obj_new_super doesn't need to be public, so inline it. 2017-04-22 12:14:04 +10:00
objarray.c py: Use mp_raise_TypeError/mp_raise_ValueError helpers where possible. 2017-03-28 22:37:26 +11:00
objarray.h py/objarray: Convert mp_uint_t to size_t where appropriate. 2017-02-16 16:51:16 +11:00
objattrtuple.c py/objtuple: Convert mp_uint_t to size_t where appropriate. 2017-02-16 16:51:16 +11:00
objbool.c
objboundmeth.c
objcell.c
objclosure.c py/objclosure: Convert mp_uint_t to size_t where appropriate. 2017-02-16 16:51:17 +11:00
objcomplex.c py: Reduce str/repr precision of float numbers when floats are 30-bit. 2017-04-21 16:21:56 +10:00
objdict.c py: Optimise types for common case where type has a single parent type. 2017-04-12 13:22:21 +10:00
objenumerate.c py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objexcept.c py: Optimise types for common case where type has a single parent type. 2017-04-12 13:22:21 +10:00
objexcept.h py/objexcept: Convert mp_uint_t to size_t where appropriate. 2017-02-16 16:51:17 +11:00
objfilter.c py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objfloat.c py: Reduce str/repr precision of float numbers when floats are 30-bit. 2017-04-21 16:21:56 +10:00
objfun.c py: Change mp_uint_t to size_t for mp_obj_str_get_data len arg. 2017-03-29 12:56:45 +11:00
objfun.h
objgenerator.c py: Use mp_raise_TypeError/mp_raise_ValueError helpers where possible. 2017-03-28 22:37:26 +11:00
objgenerator.h
objgetitemiter.c py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objint.c py/objint: In int.from_bytes, only create big-int if really needed. 2017-05-06 10:29:09 +10:00
objint.h py/objint: Consolidate mp_obj_new_int_from_float to one implementation. 2017-04-04 16:45:49 +10:00
objint_longlong.c py: Cleanup use of global DEBUG preprocessor definition 2017-04-30 14:28:37 +03:00
objint_mpz.c extmod/moductypes: Fix bigint handling for 32-bit ports. 2017-04-21 16:43:21 +03:00
objlist.c py: Convert mp_uint_t to size_t for tuple/list accessors. 2017-03-29 12:56:17 +11:00
objlist.h py/objlist: Convert mp_uint_t to size_t where appropriate. 2017-02-16 16:51:16 +11:00
objmap.c py/objmap: Convert mp_uint_t to size_t. 2017-03-27 12:19:24 +11:00
objmodule.c
objmodule.h
objnamedtuple.c py: Optimise types for common case where type has a single parent type. 2017-04-12 13:22:21 +10:00
objnone.c
objobject.c py: Use mp_raise_TypeError/mp_raise_ValueError helpers where possible. 2017-03-28 22:37:26 +11:00
objpolyiter.c py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objproperty.c
objrange.c py/objrange: Fix slicing of range when step of slice is negative. 2017-05-18 17:32:42 +10:00
objreversed.c py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objset.c py: De-optimise some uses of mp_getiter, so they don't use the C stack. 2017-02-16 19:11:34 +11:00
objsingleton.c
objslice.c
objstr.c py/objstr: Use MICROPY_FULL_CHECKS for range checking when constructing bytes. 2017-04-02 21:20:07 +03:00
objstr.h py/objstr: Convert mp_uint_t to size_t (and use int) where appropriate. 2017-02-16 16:51:16 +11:00
objstringio.c py/objstringio: Fix StringIO reads at or beyond EOF. 2017-05-15 23:58:04 +03:00
objstringio.h
objstrunicode.c py: Use size_t as len argument and return type of mp_get_index. 2017-03-23 16:17:40 +11:00
objtuple.c py/objtuple: Add support for inplace add (same as normal add). 2017-04-05 12:38:02 +10:00
objtuple.h py: Add iter_buf to getiter type method. 2017-02-16 18:38:06 +11:00
objtype.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
objtype.h
objzip.c py/objzip: Convert mp_uint_t to size_t. 2017-03-30 22:58:08 +11:00
opmethods.c
parse.c py/parse: Simplify handling of errors by raising them directly. 2017-02-24 14:56:37 +11:00
parse.h
parsenum.c py: Use mp_raise_TypeError/mp_raise_ValueError helpers where possible. 2017-03-28 22:37:26 +11:00
parsenum.h
parsenumbase.c
parsenumbase.h
persistentcode.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
persistentcode.h
py.mk all: Use full path name when including mp-readline/timeutils/netutils. 2017-03-31 22:29:39 +11:00
qstr.c
qstr.h
qstrdefs.h
reader.c py: Allow lexer to raise exceptions during construction. 2017-03-14 11:52:05 +11:00
reader.h py: Allow lexer to raise exceptions during construction. 2017-03-14 11:52:05 +11:00
repl.c py: Change mp_uint_t to size_t for mp_obj_str_get_data len arg. 2017-03-29 12:56:45 +11:00
repl.h
ringbuf.h
runtime.c py/runtime: When init'ing kbd intr exc, use tuple ptr instead of object. 2017-04-10 17:07:26 +10:00
runtime.h py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
runtime0.h py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
runtime_utils.c
scheduler.c py: Add micropython.schedule() function and associated runtime code. 2017-03-20 15:20:26 +11:00
scope.c
scope.h
sequence.c py/sequence: Fix boundary errors when slicing with a negative step. 2017-05-18 17:32:42 +10:00
showbc.c py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
smallint.c
smallint.h
stackctrl.c
stackctrl.h
stream.c
stream.h
unicode.c
unicode.h
vm.c py/vm: Fix bug with unwind jump popping the iterator from a for loop. 2017-05-25 20:39:08 +10:00
vmentrytable.h py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 2017-04-22 23:39:20 +10:00
vstr.c
warning.c