| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
These files come from STM32Cube_FW_L4_V1.3.0, with Windows line endings
converted to unix. Only basic HAL files are added. In addition the QSPI
support is included to support later external QSPI flash as mass storage.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
- any architecture may explicitely build with qstring make
QSTR_AUTOGEN_DISABLE=1 autogeneration disabled and provide its
own list of qstrings by the standard
mechanisms (qstrdefsport.h).
|
|
|
|
|
|
| |
Note this still needs some work: currently all source files are always
preprocessed no matter which one actually changed, moreover that happens
file by file without any parallellism so builds are painstakingly slow.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- add template rule that converts a specified source file into a qstring file
- add special rule for generating a central header that contains all
extracted/autogenerated strings - defined by QSTR_DEFS_COLLECTED
variable. Each platform appends a list of sources that may contain
qstrings into a new build variable: SRC_QSTR. Any autogenerated
prerequisities are should be appened to SRC_QSTR_AUTO_DEPS variable.
- remove most qstrings from py/qstrdefs, keep only qstrings that
contain special characters - these cannot be easily detected in the
sources without additional annotations
- remove most manual qstrdefs, use qstrdef autogen for: py, cc3200,
stmhal, teensy, unix, windows, pic16bit:
- remove all micropython generic qstrdefs except for the special strings that contain special characters (e.g. /,+,<,> etc.)
- remove all port specific qstrdefs except for special strings
- append sources for qstr generation in platform makefiles (SRC_QSTR)
|
|
|
|
|
|
|
|
|
|
| |
This script will search for patterns of the form Q(...) and generate a
list of them.
The original code by Pavel Moravec has been significantly simplified to
remove the part that searched for C preprocessor directives (eg #if).
This is because all source is now run through CPP before being fed into
this script.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Small hash tables (eg those used in user class instances that only have a
few members) now only use the minimum amount of memory necessary to hold
the key/value pairs. This can reduce performance for instances that have
many members (because then there are many reallocations/rehashings of the
table), but helps to conserve memory.
See issue #1760.
|
| |
|
|
|
|
|
| |
Don't describe just single port's peculiarities, note aboute possible
array of issues with floating-point.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Should fix issue #1947.
|
|
|
|
|
|
| |
"" is the correct name of the root directory when mounting a device there
(as opposed to "/"). One can now do os.listdir('/') and open('/abc'), as
well as os.listdir() and open('abc').
|
| |
|
| |
|
| |
|
|
|
|
| |
These are *defined* per-port, but why redeclare them again and again.
|
|
|
|
|
| |
A shortcut for users to provide background diagnostic info for bug
reports.
|
| |
|
| |
|
|
|
|
|
| |
The qstr data needs to be turned into a proper C string so non-ASCII
chars must be properly escaped according to C rules.
|
|
|
|
|
|
|
|
|
|
| |
Most grammar rules can optimise to the identity if they only have a single
argument, saving a lot of RAM building the parse tree. Previous to this
patch, whether a given grammar rule could be optimised was defined (mostly
implicitly) by a complicated set of logic rules. With this patch the
definition is always specified explicitly by using "and_ident" in the rule
definition in the grammar. This simplifies the logic of the parser,
making it a bit smaller and faster. RAM usage in unaffected.
|
| |
|
|
|
|
|
| |
esponewire.c contains low-level timing-critical functions that go in
iRAM. modonewire.c contains Python wrapper code.
|
| |
|
|
|
|
|
| |
Now pins can be easily looked up in the table using the pin number as the
index and vice versa.
|
|
|
|
| |
This field is the same as phys_port and not needed.
|
| |
|
| |
|
|
|
|
|
| |
Non-printable characters are escaped as 0xXX, where XX are the hex
digits of the character value.
|
| |
|
| |
|
|
|
|
|
| |
frozentest.py is frozen into the binary as frozen bytecode. The .mpy
file is included so that there is no dependency on the cross compiler.
|
|
|
|
|
|
|
| |
The config variable MICROPY_MODULE_FROZEN is now made of two separate
parts: MICROPY_MODULE_FROZEN_STR and MICROPY_MODULE_FROZEN_MPY. This
allows to have none, either or both of frozen strings and frozen mpy
files (aka frozen bytecode).
|
|
|
|
| |
Currently it can freeze .mpy files.
|
| |
|
| |
|
|
|
|
| |
It's needed by frozen bytecode.
|
| |
|