circuitpython/py
Jeff Epler 7ab5252cdd
Add CIRCUITPY_MESSAGE_COMPRESSION_LEVEL
to trade compile speed & flash size

Initially enable the faster mode on rp2040 and espressif, where there's
usually plenty of flash available (these advanced techniques save hundreds
to thousands of bytes, which is important on a lot of old samd21 boards
but is a drop in the lake of a 4MB flash chip)
2023-10-20 19:18:18 +01:00
..
argcheck.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
asmarm.c py/asmarm: Add asm_arm_ldrh_reg_reg_offset() helper func. 2022-05-23 14:21:16 +10:00
asmarm.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmbase.c spelling 2023-09-20 11:23:39 -05:00
asmbase.h py/emit: Suppress unreachable bytecode/native code that follows jump. 2022-06-20 22:28:18 +10:00
asmthumb.c fix typos (partial) detected by codepell 2023-03-18 22:17:02 +07:00
asmthumb.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmx64.c py/asmx64: Support full range of regs in asm_x64_lea_disp_to_r64. 2022-05-17 14:25:51 +10:00
asmx64.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmx86.c
asmx86.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmxtensa.c py/asmxtensa: Fix use of l32i/s32i when offset won't fit in encoding. 2022-03-30 16:32:17 +11:00
asmxtensa.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
bc0.h py: Change jump-if-x-or-pop opcodes to have unsigned offset argument. 2022-03-28 15:43:09 +11:00
bc.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
bc.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
binary.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
binary.h
builtin.h wip: continuing compilation fixes; mp_obj_alloc everywhere 2023-08-07 20:45:57 -04:00
builtinevex.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
builtinhelp.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
builtinimport.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
circuitpy_defns.mk Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
circuitpy_mkenv.mk fetch-port-submodules; fetch-all-submodules 2023-06-05 17:23:34 -04:00
circuitpy_mpconfig.h Fix a few tests 2023-10-05 10:59:08 -07:00
circuitpy_mpconfig.mk Add CIRCUITPY_MESSAGE_COMPRESSION_LEVEL 2023-10-20 19:18:18 +01:00
compile.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
compile.h py: Pass in address to compiled module instead of returning it. 2022-12-08 12:27:23 +11:00
dynruntime.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
dynruntime.mk py/dynruntime.mk: Allow building assembly source in natmods. 2022-08-11 14:00:13 +10:00
emit.h py/compile: Fix scope of assignment expression target in comprehensions. 2023-03-09 12:13:12 +11:00
emitbc.c spelling 2023-09-20 11:23:39 -05:00
emitcommon.c py/compile: Fix scope of assignment expression target in comprehensions. 2023-03-09 12:13:12 +11:00
emitglue.c Don't assume __ICACHE_PRESENT is defined 2023-08-20 10:15:56 -05:00
emitglue.h py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitinlinethumb.c change compilation verbosity options; fix mpy-cross 2023-08-12 13:38:17 -04:00
emitinlinextensa.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
emitnarm.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnative.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
emitnthumb.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnx64.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnx86.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnxtensa.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnxtensawin.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
enum.c fix use of locals_dict 2023-09-22 14:25:23 -05:00
enum.h MAKE_ENUM_TYPE for new style type defs 2023-09-22 13:39:24 -05:00
formatfloat.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
formatfloat.h
frozenmod.c py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
frozenmod.h py/builtin: Clean up and simplify import_stat and builtin_open config. 2022-05-25 13:04:45 +10:00
gc.c add back generic subscript iterator, gc_never_free 2023-09-29 23:01:02 -04:00
gc.h fix HEAP_PTR macro 2023-09-20 11:20:39 -05:00
grammar.h
lexer.c py/lexer: Wrap in parenthesis all f-string arguments passed to format. 2023-01-20 17:54:32 +11:00
lexer.h py/builtin: Clean up and simplify import_stat and builtin_open config. 2022-05-25 13:04:45 +10:00
make_root_pointers.py py/make_root_pointers: Add MP_REGISTER_ROOT_POINTER parser/generator. 2022-07-18 13:48:23 +10:00
makecompresseddata.py fix typos (partial) detected by codepell 2023-03-18 22:17:02 +07:00
makemoduledefs.py py/makemoduledefs.py: Emit useful error for legacy MP_REGISTER_MODULE. 2022-06-14 15:05:37 +01:00
makeqstrdata.py makeqstrdata: ensure _lt and _gt qstrs are sorted early 2023-09-22 10:38:52 -05:00
makeqstrdefs.py Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
maketranslationdata.py Add CIRCUITPY_MESSAGE_COMPRESSION_LEVEL 2023-10-20 19:18:18 +01:00
makeversionhdr.py Almost fix extra_coverage test 2023-10-11 10:04:02 -07:00
malloc.c wip; remove long-lived functionality; remove PR#2614 2023-08-08 20:41:17 -04:00
map.c py/map: Clear value when re-using slot with ordered dictionaries. 2023-01-13 14:21:32 +11:00
misc.h Fix availability of MP_ERROR_TEXT in misc.h 2023-09-20 11:20:56 -05:00
mkenv.mk initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
mkrules.cmake py/mkrules.cmake: Force build mpversion.h and frozen_content.c. 2023-02-08 12:24:15 +11:00
mkrules.mk force FROZEN_MANIFEST build; add back make print-% 2023-10-10 22:10:17 -04:00
modarray.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
modbuiltins.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
modcmath.c all: Remove third argument to MP_REGISTER_MODULE. 2022-06-02 16:31:37 +10:00
modcollections.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
modgc.c all: Remove third argument to MP_REGISTER_MODULE. 2022-06-02 16:31:37 +10:00
modio.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
modmath.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
modmicropython.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
modstruct.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
modsys.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
modthread.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
moduerrno.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
mpconfig.h Only include mpconfigport.h once 2023-10-11 10:04:03 -07:00
mperrno.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
mphal.h
mpprint.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
mpprint.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
mpstate.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
mpstate.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
mpthread.h
mpz.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
mpz.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nativeglue.c fixes for circuitpython nativeglue 2023-09-22 10:39:28 -05:00
nativeglue.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlr.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
nlr.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
nlraarch64.c
nlrmips.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
nlrpowerpc.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
nlrsetjmp.c
nlrthumb.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlrx64.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlrx86.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlrxtensa.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
obj.c add back generic subscript iterator, gc_never_free 2023-09-29 23:01:02 -04:00
obj.h Metro M4 now compiles 2023-10-03 15:03:59 -04:00
objarray.c fix duplicate array_locals_dict_table 2023-09-22 14:25:36 -05:00
objarray.h py/objarray: Raise error on out-of-bound memoryview slice start. 2023-01-20 16:31:37 +11:00
objattrtuple.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objbool.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objboundmeth.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objcell.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
objclosure.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objcomplex.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objdeque.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objdict.c Bring back ordereddict.move_to_end() 2023-10-05 12:48:45 -07:00
objenumerate.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objexcept.c re-add CP-specific exception related types 2023-09-22 14:26:13 -05:00
objexcept.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objfilter.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objfloat.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
objfun.c add translate.h and linker.h includes back to runtime.h; remove linker.h refs; remove top-level lib/cyw43-driver 2023-09-20 22:00:09 -04:00
objfun.h wip; remove long-lived functionality; remove PR#2614 2023-08-08 20:41:17 -04:00
objgenerator.c fix circuitpy memoryview.cast 2023-09-22 13:44:48 -05:00
objgenerator.h
objgetitemiter.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objint_longlong.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objint_mpz.c fix compile error 2023-09-20 11:24:26 -05:00
objint.c fix compile erors 2023-09-20 11:24:22 -05:00
objint.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objlist.c remove unused functions 2023-09-22 13:55:15 -05:00
objlist.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objmap.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objmodule.c remove unused functions 2023-09-22 13:55:15 -05:00
objmodule.h py/objmodule: Support delegating failed attr lookups. 2022-03-10 10:35:44 +11:00
objnamedtuple.c Fix constructing empty namedtuple 2023-10-02 09:08:03 -05:00
objnamedtuple.h allow definition of namedtuples in core 2023-09-22 13:56:16 -05:00
objnone.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objobject.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objpolyiter.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
objproperty.c add translate.h and linker.h includes back to runtime.h; remove linker.h refs; remove top-level lib/cyw43-driver 2023-09-20 22:00:09 -04:00
objproperty.h Enable squeezing property storage in flash 2022-05-03 08:48:53 -05:00
objrange.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objreversed.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objset.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objsingleton.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objslice.c fix definition of slice type with optional "make_new" 2023-09-22 13:56:36 -05:00
objstr.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
objstr.h Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
objstringio.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objstringio.h
objstrunicode.c Fix a few tests 2023-10-05 10:59:08 -07:00
objtraceback.c convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
objtraceback.h
objtuple.c slots & macro moved to header 2023-09-20 11:25:09 -05:00
objtuple.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objtype.c Fix super init. CP changed it to support kwargs 2023-10-05 12:44:30 -07:00
objtype.h add missing declarations that got lost in the merge 2023-09-22 10:40:11 -05:00
objzip.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
opmethods.c py/obj: Add accessors for type slots and use everywhere. 2022-09-19 19:06:07 +10:00
pairheap.c
pairheap.h
parse.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
parse.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
parsenum.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
parsenum.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
parsenumbase.c
parsenumbase.h
persistentcode.c fix mpy magic numbers 2023-09-22 13:50:35 -05:00
persistentcode.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
profile.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
profile.h py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
proto.c fixes for mp_type_get_protocol_slot 2023-09-22 13:51:57 -05:00
proto.h fixes for mp_type_get_protocol_slot 2023-09-22 13:51:57 -05:00
py.cmake initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
py.mk Add CIRCUITPY_MESSAGE_COMPRESSION_LEVEL 2023-10-20 19:18:18 +01:00
pystack.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
pystack.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
qstr.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
qstr.h Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
qstrdefs.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
reader.c py: Include filename in errors from loading/saving files via "open". 2022-09-19 23:27:08 +10:00
reader.h
repl.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
repl.h py/modsys: Add optional mutable attributes sys.ps1/ps2 and use them. 2022-03-10 10:58:33 +11:00
ringbuf.c wip; fix more m_malloc and gc_alloc 2023-08-11 00:30:34 -04:00
ringbuf.h wip; remove long-lived functionality; remove PR#2614 2023-08-08 20:41:17 -04:00
runtime0.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
runtime_utils.c
runtime.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
runtime.h add translate.h and linker.h includes back to runtime.h; remove linker.h refs; remove top-level lib/cyw43-driver 2023-09-20 22:00:09 -04:00
scheduler.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
scope.c py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
scope.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
sequence.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
showbc.c py: Change jump-if-x-or-pop opcodes to have unsigned offset argument. 2022-03-28 15:43:09 +11:00
smallint.c
smallint.h py/smallint: Introduce MP_SMALL_INT_BITS macro. 2022-03-25 12:23:43 +11:00
stackctrl.c add translate.h and linker.h includes back to runtime.h; remove linker.h refs; remove top-level lib/cyw43-driver 2023-09-20 22:00:09 -04:00
stackctrl.h
stream.c re-fix stream function definition 2023-09-22 14:26:36 -05:00
stream.h make mp_stream_flush available 2023-09-22 13:52:04 -05:00
unicode.c
unicode.h
usermod.cmake
vm.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
vmentrytable.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
vstr.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
warning.c