micropython/tests/import
Damien George c8c0fd4ca3 py: Rework and compress second part of bytecode prelude.
This patch compresses the second part of the bytecode prelude which
contains the source file name, function name, source-line-number mapping
and cell closure information.  This part of the prelude now begins with a
single varible length unsigned integer which encodes 2 numbers, being the
byte-size of the following 2 sections in the header: the "source info
section" and the "closure section".  After decoding this variable unsigned
integer it's possible to skip over one or both of these sections very
easily.

This scheme saves about 2 bytes for most functions compared to the original
format: one in the case that there are no closure cells, and one because
padding was eliminated.
2019-10-01 12:26:22 +10:00
..
pkg tests: Split out those tests requiring float and import. 2014-04-17 16:21:43 +01:00
pkg2 tests: Split out those tests requiring float and import. 2014-04-17 16:21:43 +01:00
pkg3 tests: Split out those tests requiring float and import. 2014-04-17 16:21:43 +01:00
pkg6 tests: Add another testcase for relative imports. 2015-02-16 12:11:41 +02:00
pkg7 tests/import: Update comment now that uPy raises correct exception. 2017-06-28 12:21:29 +10:00
pkg8 tests/import: Improve builtinimport.c test coverage. 2017-01-16 15:59:33 +11:00
builtin_import.py tests/import: Add a test for the builtin __import__ function. 2017-06-28 12:21:29 +10:00
gen_context2.py tests: Move gen_context to import tests, because it relies on import. 2014-04-17 23:21:52 +01:00
gen_context.py tests: Move gen_context to import tests, because it relies on import. 2014-04-17 23:21:52 +01:00
import1a.py
import1b.py
import2a.py tests: Improve test coverage of py/compile.c. 2016-10-11 12:30:32 +11:00
import3a.py
import_file.py py: Implement __file__ attribute for modules. 2014-07-28 21:21:59 +03:00
import_long_dyn2.py tests/import_long_dyn: Test for "import *" of a long dynamic name. 2018-11-01 13:33:16 +11:00
import_long_dyn.py tests/import_long_dyn: Test for "import *" of a long dynamic name. 2018-11-01 13:33:16 +11:00
import_override.py tests: Add tests for overriding builtins.__import__. 2019-07-31 22:37:44 +10:00
import_pkg1.py tests/import: Add test for compiling "import a.b as c". 2016-09-30 14:48:22 +10:00
import_pkg2.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
import_pkg3.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
import_pkg4.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
import_pkg5.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
import_pkg6.py tests: Add another testcase for relative imports. 2015-02-16 12:11:41 +02:00
import_pkg7.py tests/import: Improve builtinimport.c test coverage. 2017-01-16 15:59:33 +11:00
import_pkg8.py tests/import: Improve builtinimport.c test coverage. 2017-01-16 15:59:33 +11:00
module_getattr.py py/objmodule: Implement PEP 562's __getattr__ for modules. 2018-10-23 11:22:50 +11:00
module_getattr.py.exp tests/import: Add .exp file for module_getattr.py to not require Py 3.7. 2018-10-23 11:56:58 +11:00
mpy_invalid.py py/persistentcode: Add a qstr window to save mpy files more efficiently. 2019-03-05 16:25:07 +11:00
mpy_invalid.py.exp py/persistentcode: Add a qstr window to save mpy files more efficiently. 2019-03-05 16:25:07 +11:00
mpy_native.py py: Rework and compress second part of bytecode prelude. 2019-10-01 12:26:22 +10:00
mpy_native.py.exp tests/import: Add test for importing x64 native code. 2019-03-08 17:20:17 +11:00
rel_import_inv.py tests: Add test for relative import without package context. 2015-06-27 00:40:22 +03:00
try_module.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00