circuitpython/py
Damien George 155fdc74d5 py/asm: Remove need for dummy_data when doing initial assembler passes.
For all but the last pass the assembler only needs to count how much space
is needed for the machine code, it doesn't actually need to emit anything.
The dummy_data just uses unnecessary RAM and without it the code is not
any more complex (and code size does not increase for Thumb and Xtensa
archs).
2016-12-09 22:50:58 +11:00
..
argcheck.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
asmarm.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmarm.h py: Move arch-specific assembler macros from emitnative to asmXXX.h. 2016-12-09 16:51:49 +11:00
asmbase.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmbase.h py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmthumb.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmthumb.h py: Move arch-specific assembler macros from emitnative to asmXXX.h. 2016-12-09 16:51:49 +11:00
asmx64.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmx64.h py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmx86.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmx86.h py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmxtensa.c py/asm: Remove need for dummy_data when doing initial assembler passes. 2016-12-09 22:50:58 +11:00
asmxtensa.h py/asmxtensa: Add low-level Xtensa assembler. 2016-12-09 16:51:49 +11:00
bc0.h py: Combine 3 comprehension opcodes (list/dict/set) into 1. 2016-09-19 12:28:03 +10:00
bc.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
bc.h py/bc.h: Rename _mp_code_state to _mp_code_state_t. 2016-08-27 23:23:51 +10:00
binary.c py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 2015-11-29 14:25:35 +00:00
binary.h py/binary: Make return type of mp_binary_get_size size_t instead of int. 2015-05-17 18:12:19 +01:00
builtin.h stmhal/moduselect: Move to extmod/ for reuse by other ports. 2016-11-21 00:05:56 +03:00
builtinevex.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
builtinimport.c py: Factor persistent code load/save funcs into persistentcode.[ch]. 2016-11-16 16:14:14 +11:00
compile.c py/emitinline: Move common code for end of final pass to compiler. 2016-12-09 21:23:17 +11:00
compile.h py: Allow inline-assembler emitter to be generic. 2016-12-09 17:06:21 +11:00
emit.h py/emitinline: Move common code for end of final pass to compiler. 2016-12-09 21:23:17 +11:00
emitbc.c py: remove asserts that are always true in emitbc.c 2016-10-31 23:21:22 +03:00
emitcommon.c py/scope: Factor common code to find locals and close over them. 2016-09-30 13:53:00 +10:00
emitglue.c py: Allow inline-assembler emitter to be generic. 2016-12-09 17:06:21 +11:00
emitglue.h py: Factor persistent code load/save funcs into persistentcode.[ch]. 2016-11-16 16:14:14 +11:00
emitinlinethumb.c py/emitinline: Move common code for end of final pass to compiler. 2016-12-09 21:23:17 +11:00
emitinlinextensa.c py/emitinline: Move common code for end of final pass to compiler. 2016-12-09 21:23:17 +11:00
emitnative.c py: Integrate Xtensa assembler into native emitter. 2016-12-09 16:51:49 +11:00
formatfloat.c py/formatfloat: Fix further cases of buffer overflow in formatting. 2016-03-29 22:07:15 +01:00
formatfloat.h py: Implement mp_format_float for doubles and use where appropriate 2015-05-17 21:47:11 +01:00
frozenmod.c py: Allow to stat and import frozen mpy files using new frozen "VFS". 2016-05-23 12:42:23 +01:00
frozenmod.h py/{builtinimport,frozenmod}: Rework frozen modules support to support packages. 2016-05-21 21:38:50 +03:00
gc.c py/gc: Add MICROPY_GC_CONSERVATIVE_CLEAR option to always zero memory. 2016-08-26 15:35:26 +10:00
gc.h py/gc: Calculate (and report) maximum contiguous free block size. 2016-07-01 00:09:55 +03:00
grammar.h py: Simplify "and" action within parser by making ident-rules explicit. 2016-04-14 13:49:23 +01:00
lexer.c py/lexer: Make lexer use an mp_reader as its source. 2016-11-16 18:35:01 +11:00
lexer.h py/lexer: Make lexer use an mp_reader as its source. 2016-11-16 18:35:01 +11:00
makeqstrdata.py py/makeqstrdata.py: Compute the qstr hash from bytes, not characters. 2016-09-02 14:32:47 +10:00
makeqstrdefs.py py/makeqstrdefs.py: Use python 2.6 syntax for set creation. 2016-09-09 23:01:23 +10:00
makeversionhdr.py py/makeversionhdr.py: Work with backslashes in paths. 2015-10-30 11:34:53 +03:00
malloc.c py/gc: Add MICROPY_GC_CONSERVATIVE_CLEAR option to always zero memory. 2016-08-26 15:35:26 +10:00
map.c py: Declare constant data as properly constant. 2016-05-20 12:46:20 +01:00
misc.h py/vstr: Combine vstr_new_size with vstr_new since they are rarely used. 2016-10-14 16:46:34 +11:00
mkenv.mk py: Move frozen bytecode Makefile rules from ports to common mk files. 2016-11-08 14:28:30 +11:00
mkrules.mk py: Integrate Xtensa assembler into native emitter. 2016-12-09 16:51:49 +11:00
modarray.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
modbuiltins.c py: Add "delattr" builtin, conditional on MICROPY_CPYTHON_COMPAT. 2016-10-24 13:50:03 +11:00
modcmath.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
modcollections.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
modgc.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
modio.c py: Add mp_raise_OSError(errno) helper function. 2016-10-07 13:31:59 +11:00
modmath.c py: Add MICROPY_FLOAT_CONST macro for defining float constants. 2016-11-03 12:33:01 +11:00
modmicropython.c py/modmicropython: Add micropython.opt_level([value]) function. 2016-10-11 10:56:22 +11:00
modstruct.c py/modstruct: Remove unreachable code, and add comment about CPy diff. 2016-10-07 12:54:14 +11:00
modsys.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
modthread.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
moduerrno.c all: Remove 'name' member from mp_obj_module_t struct. 2016-09-22 00:23:16 +10:00
mpconfig.h py: Add inline Xtensa assembler. 2016-12-09 17:07:38 +11:00
mperrno.h py/moduerrno: Add ECONNREFUSED, one of frequent networking errors. 2016-05-28 00:17:19 +03:00
mphal.h extmod/utime_mphal: Factor out implementations in terms of mp_hal_* for reuse. 2016-10-14 20:14:01 +03:00
mpprint.c py/objint: Use size_t for arguments that measure bytes/sizes. 2016-10-11 13:20:11 +11:00
mpprint.h lib/utils/pyhelp.c: Use mp_printf() instead of printf() 2016-10-21 18:30:58 +11:00
mpstate.c py: Add MICROPY_DYNAMIC_COMPILER option to config compiler at runtime. 2016-02-25 10:05:46 +00:00
mpstate.h py/gc: Implement GC running by allocation threshold. 2016-07-21 00:37:30 +03:00
mpthread.h py/mpthread: Include mpstate.h when defining GIL macros. 2016-06-28 11:28:52 +01:00
mpz.c py: fix null pointer dereference in mpz.c, fix missing va_end in warning.c 2016-10-31 23:21:15 +03:00
mpz.h py: Factor duplicated function to calculate size of formatted int. 2016-10-11 13:11:32 +11:00
nativeglue.c py: Allow inline-assembler emitter to be generic. 2016-12-09 17:06:21 +11:00
nlr.h py/nlrsetjmp: Update to take into account new location of nlr_top. 2016-06-28 11:28:52 +01:00
nlrsetjmp.c py/nlrsetjmp: Update to take into account new location of nlr_top. 2016-06-28 11:28:52 +01:00
nlrthumb.c py: Fix nlrthumb.c when DEBUG=1 is defined 2016-07-21 00:54:21 +03:00
nlrx64.S py/nlrx64.S: Prefix mp_thread_get_state with an underscore on Mac. 2016-07-11 14:27:47 +01:00
nlrx86.S unix: fix symbol references for x86 Mac 2016-11-02 00:42:04 +03:00
nlrxtensa.S py: Put all global state together in state structures. 2015-01-07 20:33:00 +00:00
obj.c py/{modbuiltins,obj}: Use MP_PYTHON_PRINTER where possible. 2016-10-22 01:07:07 +03:00
obj.h py: Specialise builtin funcs to use separate type for fixed arg count. 2016-10-21 16:26:01 +11:00
objarray.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objarray.h py/objarray: Split out header to allow direct access to object. 2016-07-06 18:19:27 +03:00
objattrtuple.c py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 2015-11-29 14:25:35 +00:00
objbool.c py/objbool: Make a slight simplification of bool constructor. 2016-09-30 17:02:07 +10:00
objboundmeth.c py/objtype: Implement __call__ handling for an instance w/o heap alloc. 2016-11-22 01:33:55 +03:00
objcell.c py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 2015-11-29 14:25:35 +00:00
objclosure.c py: Fix passing of some wide int types to printf varg format list. 2016-03-14 22:40:39 +00:00
objcomplex.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objdict.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objenumerate.c py: Use new code pattern for parsing kw args with mp_arg_parse_all. 2016-01-13 15:47:56 +00:00
objexcept.c py/objexcept: Allow clearing traceback with 'exc.__traceback__ = None'. 2016-11-14 02:29:09 +03:00
objexcept.h py: Change exception traceback data to use size_t instead of mp_uint_t. 2016-01-02 22:04:12 +00:00
objfilter.c py: Get rid of assert() in method argument checking functions. 2016-08-12 22:39:03 +03:00
objfloat.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objfun.c py: Allow inline-assembler emitter to be generic. 2016-12-09 17:06:21 +11:00
objfun.h py: Add constant table to bytecode. 2015-11-13 12:49:18 +00:00
objgenerator.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objgenerator.h py: Move to guarded includes, everywhere in py/ core. 2015-01-01 20:32:09 +00:00
objgetitemiter.c py/objgetitemiter: Typo fix in comment. 2016-01-23 23:30:06 +02:00
objint_longlong.c py/objint: Use size_t for arguments that measure bytes/sizes. 2016-10-11 13:20:11 +11:00
objint_mpz.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objint.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objint.h py/objint: Use size_t for arguments that measure bytes/sizes. 2016-10-11 13:20:11 +11:00
objlist.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objlist.h py: Fix adding of traceback so that it appends to existing info. 2015-02-27 00:36:39 +00:00
objmap.c py: Get rid of assert() in method argument checking functions. 2016-08-12 22:39:03 +03:00
objmodule.c stmhal/moduselect: Move to extmod/ for reuse by other ports. 2016-11-21 00:05:56 +03:00
objmodule.h py: Move to guarded includes, everywhere in py/ core. 2015-01-01 20:32:09 +00:00
objnamedtuple.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objnone.c py/objnone: Use mp_generic_unary_op instead of custom one. 2016-09-19 12:28:55 +10:00
objobject.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objpolyiter.c py/objpolyiter: Implement instance-polymorphic iterator type. 2015-12-14 23:48:12 +02:00
objproperty.c py: Get rid of assert() in method argument checking functions. 2016-08-12 22:39:03 +03:00
objrange.c py: Change first arg of type.make_new from mp_obj_t to mp_obj_type_t*. 2016-01-11 00:49:27 +00:00
objreversed.c py: Get rid of assert() in method argument checking functions. 2016-08-12 22:39:03 +03:00
objset.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objsingleton.c py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 2015-11-29 14:25:35 +00:00
objslice.c py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 2015-11-29 14:25:35 +00:00
objstr.c py/objstr: Remove unreachable function used only for terse error msgs. 2016-09-27 15:45:42 +10:00
objstr.h py: Be more specific with MP_DECLARE_CONST_FUN_OBJ macros. 2016-10-21 16:26:01 +11:00
objstringio.c py: Use mp_raise_msg helper function where appropriate. 2016-10-17 12:17:37 +11:00
objstringio.h extmod/modujson: Implement ujson.load() to load JSON from a stream. 2016-10-13 11:46:14 +11:00
objstrunicode.c py/objstr,objstrunicode: Fix inconistent #if indentation. 2016-08-07 15:24:57 +03:00
objtuple.c py/objtuple: In tuple_cmp_helper, use mp_check_self instead of raising. 2016-08-14 16:28:05 +10:00
objtuple.h py: Add MP_ROM_* macros and mp_rom_* types and use them. 2015-11-29 14:25:04 +00:00
objtype.c py/objtype: Implement __call__ handling for an instance w/o heap alloc. 2016-11-22 01:33:55 +03:00
objtype.h py: Change first arg of type.make_new from mp_obj_t to mp_obj_type_t*. 2016-01-11 00:49:27 +00:00
objzip.c py: Get rid of assert() in method argument checking functions. 2016-08-12 22:39:03 +03:00
opmethods.c py: Move to guarded includes, everywhere in py/ core. 2015-01-01 20:32:09 +00:00
parse.c py/parse: Add code to fold logical constants in or/and/not operations. 2016-11-15 16:48:49 +11:00
parse.h py/parse: Make mp_parse_node_new_leaf an inline function. 2016-11-15 16:48:48 +11:00
parsenum.c py: Add MICROPY_FLOAT_CONST macro for defining float constants. 2016-11-03 12:33:01 +11:00
parsenum.h py/parsenum: Use size_t to count bytes, and int for type of base arg. 2016-03-14 22:34:03 +00:00
parsenumbase.c py/parsenum: Fix compiler warnings for no decl and signed comparison. 2016-03-14 22:52:52 +00:00
parsenumbase.h py/parsenum: Use size_t to count bytes, and int for type of base arg. 2016-03-14 22:34:03 +00:00
persistentcode.c py: Factor out persistent-code reader into separate files. 2016-11-16 18:13:50 +11:00
persistentcode.h py: Factor out persistent-code reader into separate files. 2016-11-16 18:13:50 +11:00
py.mk py: Add inline Xtensa assembler. 2016-12-09 17:07:38 +11:00
qstr.c py: Fix wrong assumption that m_renew will not move if shrinking 2016-11-02 23:15:41 +11:00
qstr.h py: Rename __QSTR_EXTRACT flag to NO_QSTR. 2016-06-16 01:42:48 +03:00
qstrdefs.h py: Add rules for automated extraction of qstrs from sources. 2016-04-16 13:18:09 +01:00
reader.c py/lexer: Rewrite mp_lexer_new_from_fd in terms of mp_reader. 2016-11-16 18:13:51 +11:00
reader.h py/lexer: Rewrite mp_lexer_new_from_fd in terms of mp_reader. 2016-11-16 18:13:51 +11:00
repl.c py: Declare constant data as properly constant. 2016-05-20 12:46:20 +01:00
repl.h py, readline: Add tab autocompletion for REPL. 2015-04-29 00:46:26 +01:00
ringbuf.h py/ringbuf.h: Add reusable ring buffer class. 2016-03-30 14:48:31 +03:00
runtime0.h py: Extend native type-sig to use 4 bits, so uint is separate to ptr. 2016-02-02 23:16:05 +00:00
runtime_utils.c py/runtime_utils: Fix nanbox build. 2016-04-25 20:03:14 +03:00
runtime.c py/runtime: mp_resume: Fix exception handling for nanbox port. 2016-11-15 01:41:22 +03:00
runtime.h py/objtype: Implement __call__ handling for an instance w/o heap alloc. 2016-11-22 01:33:55 +03:00
scope.c py/scope: Factor common code to find locals and close over them. 2016-09-30 13:53:00 +10:00
scope.h py/scope: Factor common code to find locals and close over them. 2016-09-30 13:53:00 +10:00
sequence.c py/sequence: Fix reverse slicing of lists. 2016-10-30 15:54:19 -02:00
showbc.c py/showbc: Make printf's go to the platform print stream. 2016-09-20 11:30:54 +10:00
smallint.c py: Move to guarded includes, everywhere in py/ core. 2015-01-01 20:32:09 +00:00
smallint.h py/smallint: Allow to override MP_SMALL_INT_MIN et al. 2016-01-08 13:43:56 +00:00
stackctrl.c py: Add MP_STATE_THREAD to hold state specific to a given thread. 2016-06-28 11:09:31 +01:00
stackctrl.h py/stackctrl: Add mp_stack_set_top() to explicitly set stack top value. 2016-03-07 14:12:24 +07:00
stream.c all: Remove readall() method, which is equivalent to read() w/o args. 2016-11-14 00:24:22 +03:00
stream.h py/stream: Move ad-hoc ioctl constants to stream.h and rename them. 2016-12-02 16:37:29 +11:00
unicode.c py/repl: Check for an identifier char after the keyword. 2016-02-17 08:56:15 +00:00
unicode.h py: Move to guarded includes, everywhere in py/ core. 2015-01-01 20:32:09 +00:00
vm.c py/vm: Use MP_OBJ_FROM_PTR to cast a type to an object. 2016-09-27 13:21:23 +10:00
vmentrytable.h py: Combine 3 comprehension opcodes (list/dict/set) into 1. 2016-09-19 12:28:03 +10:00
vstr.c py/vstr: Combine vstr_new_size with vstr_new since they are rarely used. 2016-10-14 16:46:34 +11:00
warning.c py: fix null pointer dereference in mpz.c, fix missing va_end in warning.c 2016-10-31 23:21:15 +03:00