micropython/py
Damien George af20c2ead3 py: Add global default_emit_opt variable to make emit kind persistent.
mp_compile no longer takes an emit_opt argument, rather this setting is now
provided by the global default_emit_opt variable.

Now, when -X emit=native is passed as a command-line option, the emitter
will be set for all compiled modules (included imports), not just the
top-level script.

In the future there could be a way to also set this variable from a script.

Fixes issue #4267.
2019-08-28 12:47:58 +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/persistentcode: Pack qstrs directly in bytecode to reduce mpy size. 2019-03-05 16:27:34 +11:00
bc.h various: Add and update my copyright line based on git history. 2019-05-17 18:04:15 +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 various: Update early copyright years to match actual edit history. 2019-05-17 18:06:11 +10:00
binary.h various: Update early copyright years to match actual edit history. 2019-05-17 18:06:11 +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: Add global default_emit_opt variable to make emit kind persistent. 2019-08-28 12:47:58 +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/emitbc: Make all emit_write_bytecode_* funcs take a stack_adj arg. 2019-08-22 15:32:26 +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: Define EMIT_MACHINE_CODE as EMIT_NATIVE || EMIT_INLINE_ASM. 2019-06-28 13:54:45 +10:00
emitglue.h py: Define EMIT_MACHINE_CODE as EMIT_NATIVE || EMIT_INLINE_ASM. 2019-06-28 13:54:45 +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
formatfloat.h
frozenmod.c
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
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
modsys.c py: Implement new sys.atexit feature. 2019-08-15 17:30:50 +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 extmod/modure: Make regex dump-code debugging feature optional. 2019-08-19 16:43:00 +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
mpstate.c
mpstate.h py: Add global default_emit_opt variable to make emit kind persistent. 2019-08-28 12:47:58 +10:00
mpthread.h
mpz.c
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
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
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
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
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: Downcase all MP_OBJ_IS_xxx macros to make a more consistent C API. 2019-02-12 14:54:51 +11: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
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
py.mk py/py.mk: Remove trailing spaces at end of line. 2019-08-27 16:37:43 +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: Add global default_emit_opt variable to make emit kind persistent. 2019-08-28 12:47:58 +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/vm: Don't add traceback info for exceptions that are re-raised. 2019-08-28 12:31:53 +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