circuitpython/py
Tom McDermott 1022f9cc35 py/modstruct: Fix struct.unpack with unaligned offset of native type.
With this patch alignment is done relative to the start of the buffer that
is being unpacked, not the raw pointer value, as per CPython.

Fixes issue #3314.
2019-09-02 13:10:55 +10: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
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: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmx86.h py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmxtensa.c py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
asmxtensa.h py: Add support to save native, viper and asm code to .mpy files. 2019-03-08 15:53:05 +11:00
bc.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
bc.h py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
bc0.h py/bc0.h: Add comment that MP_BC_MAKE_CLOSURE/_DEFARGS take extra byte. 2019-08-22 16:07:28 +10:00
binary.c py/modstruct: Fix struct.unpack with unaligned offset of native type. 2019-09-02 13:10:55 +10:00
binary.h py/modstruct: Fix struct.unpack with unaligned offset of native type. 2019-09-02 13:10:55 +10:00
builtin.h extmod/moduwebsocket: Refactor `websocket` to `uwebsocket`. 2019-02-14 00:35:45 +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: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
builtinimport.c py/builtinimport: Populate __file__ when importing frozen or mpy files. 2019-07-31 17:00:11 +10:00
compile.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
compile.h py: Add global default_emit_opt variable to make emit kind persistent. 2019-08-28 12:47:58 +10:00
emit.h py/compile: Support multiple inline asm emitters. 2019-03-14 12:22:25 +11:00
emitbc.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10: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/nativeglue: Remove dependency on mp_fun_table in dyn-compiler mode. 2019-05-29 21:17:29 +10: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/emitnative: Implement yield and yield-from in native emitter. 2018-10-01 13:31:11 +10:00
emitnxtensa.c py/emitnative: Add support for return/break/continue in try and with. 2018-09-04 14:31:28 +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
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 various: Add and update my copyright line based on git history. 2019-05-17 18:04:15 +10: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
lexer.c
lexer.h
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/makeqstrdata.py: Allow using \r\n as a qstr if a port requires it. 2019-07-12 17:10:11 +10:00
makeqstrdefs.py py/makedefs: Use io.open with utf-8 encoding when processing source. 2019-04-12 11:34:52 +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
map.c py: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
misc.h py/misc.h: Rename _MP_STRINGIFY to not use leading underscore in ident. 2019-05-09 17:11:33 +10:00
mkenv.mk py: Update makefiles to use $(TOUCH) instead of hard coded "touch". 2019-05-22 12:56:40 +10:00
mkrules.mk py/mkrules.mk: Use $(CPP) not $(CC) -E for preprocessor rule. 2019-06-25 15:03:41 +10:00
modarray.c py: Allow registration of modules at their definition. 2019-03-08 22:46:43 +11:00
modbuiltins.c py: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
modcmath.c
modcollections.c
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/modstruct: Fix struct.unpack with unaligned offset of native type. 2019-09-02 13:10:55 +10:00
modsys.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
modthread.c py: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
moduerrno.c
mpconfig.h py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
mperrno.h
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
mpstate.h py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
mpthread.h
mpz.c py/mpz: Avoid undefined behavior at integer overflow in mpz_hash. 2018-05-21 12:48:26 +10:00
mpz.h
nativeglue.c py: Allow to pass in read-only buffers to viper and inline-asm funcs. 2019-08-06 15:58:23 +10:00
nlr.c
nlr.h py/nlrthumb: Save and restore VFP registers s16-s21 when CPU has them. 2019-06-19 14:53:17 +10: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/nlr: Use MP_UNREACHABLE at the end of arch-specific nlr_jump funcs. 2019-08-19 16:14:57 +10: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/obj: Optimise small-int comparison to 0 in mp_obj_is_true. 2019-06-05 10:54:23 +10:00
obj.h py: Allow registration of modules at their definition. 2019-03-08 22:46:43 +11:00
objarray.c py/objarray: Fix amount of free space in array when doing slice assign. 2019-08-15 23:02:04 +10:00
objarray.h py/objarray: Introduce "memview_offset" alias for "free" field of object 2018-12-20 17:40:48 +11:00
objattrtuple.c
objbool.c
objboundmeth.c py/objboundmeth: Support loading generic attrs from the method. 2018-12-06 18:02:41 +11:00
objcell.c
objclosure.c
objcomplex.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objdeque.c
objdict.c py/objdict: Quote non-string types when used as keys in JSON output. 2019-07-30 16:34:27 +10:00
objenumerate.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objexcept.c py/objgenerator: Move defn of mp_const_GeneratorExit_obj here. 2019-08-22 16:05:05 +10: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: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objfun.c py: Allow to pass in read-only buffers to viper and inline-asm funcs. 2019-08-06 15:58:23 +10: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: Move defn of mp_const_GeneratorExit_obj here. 2019-08-22 16:05:05 +10:00
objgenerator.h
objgetitemiter.c
objint.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.h
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: remove "if (0)" and "if (false)" branches. 2019-05-06 18:28:28 +10:00
objlist.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objlist.h
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 various: Add and update my copyright line based on git history. 2019-05-17 18:04:15 +10:00
objmodule.h
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
objnone.c
objobject.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objpolyiter.c all: Remove inclusion of internal py header files. 2017-10-04 12:37:50 +11:00
objproperty.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +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/objset: Remove unused forward declaration and clean up whitespace. 2019-04-15 11:14:22 +10:00
objsingleton.c
objslice.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objstr.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objstr.h py/objarray: Add decode method to bytearray. 2019-05-21 14:24:04 +10:00
objstringio.c py/objstringio: Guard bytesio_stream_p struct w/ MICROPY_PY_IO_BYTESIO. 2019-07-17 16:12:19 +10:00
objstringio.h
objstrunicode.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
objtuple.c py/objtuple: Allow compatible subclasses of tuple in mp_obj_tuple_get. 2019-08-31 00:14:11 +10:00
objtuple.h
objtype.c py: Downcase MP_xxx_SLOT_IS_FILLED inline functions. 2019-02-12 14:54:51 +11:00
objtype.h
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
parse.c py: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11:00
parse.h
parsenum.c py/parsenum: Avoid rounding errors with negative powers-of-10. 2018-09-20 22:06:41 +10:00
parsenum.h
parsenumbase.c all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
parsenumbase.h
persistentcode.c py/persistentcode: Ensure prelude_offset is always initialised. 2019-07-01 23:46:49 +10:00
persistentcode.h mpy-cross: Add --version command line option to print version info. 2019-05-07 13:54:20 +10:00
profile.c py/profile: Add debugging for sys.settrace feature. 2019-08-30 16:48:47 +10:00
profile.h py/profile: Add debugging for sys.settrace feature. 2019-08-30 16:48:47 +10:00
py.mk py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
pystack.c
pystack.h
qstr.c py/qstr: Evaluate find_qstr only once then pass to Q_GET_HASH macro. 2019-02-19 23:44:01 +11:00
qstr.h
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
reader.h
repl.c
repl.h
ringbuf.h
runtime.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
runtime.h py/nativeglue: Make private glue funs all static, remove commented code. 2019-05-29 21:14:24 +10:00
runtime0.h py/obj: Add support for __int__ special method. 2018-12-07 17:28:04 +11:00
runtime_utils.c
scheduler.c py/scheduler: Rename sched_stack to sched_queue. 2019-07-17 16:09:32 +10: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/sequence: Fix grammar in comment about equality. 2019-07-25 16:37:25 +10:00
showbc.c py/showbc: Fix off-by-one when showing address of unknown opcode. 2019-08-06 16:08:39 +10:00
smallint.c
smallint.h
stackctrl.c
stackctrl.h
stream.c py: Update my copyright info on some files. 2019-02-06 00:19:00 +11:00
stream.h various: Add and update my copyright line based on git history. 2019-05-17 18:04:15 +10:00
unicode.c py/unicode: Fix check for valid utf8 being stricter about contn chars. 2018-11-26 16:13:08 +11:00
unicode.h
vm.c py: Integrate sys.settrace feature into the VM and runtime. 2019-08-30 16:44:12 +10:00
vmentrytable.h py: Replace POP_BLOCK and POP_EXCEPT opcodes with POP_EXCEPT_JUMP. 2019-03-05 16:09:58 +11: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