aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-09-04docs: Rename machine.ADC docs to machine.ADCWiPy.Damien George
To signify that this ADC documentation is specific to the WiPy, and to make way for a standardised ADC documentation.
2019-09-04stm32/powerctrl: Fix machine.bootloader() for L0 MCUs.Jim Mussared
2019-09-03stm32/dma: Fix DMA config for L0 MCUs.Jim Mussared
2019-09-03windows/msvc: Treat compiler warnings as errors.stijn
This is consistent with the other ports and helps catching problems early.
2019-09-03docs/library/pyb.DAC.rst: Correct frequency for triangle mode output.Jim Mussared
Also correct comments in related code.
2019-09-03esp32/Makefile: Fix subst->patsubst in ESPIDF_BOOTLOADER_SUPPORT_O.Jim Mussared
2019-09-02py/bc: Fix size calculation of UNWIND_JUMP opcode in mp_opcode_format.Damien George
Prior to this patch mp_opcode_format would calculate the incorrect size of the MP_BC_UNWIND_JUMP opcode, missing the additional byte. But, because opcodes below 0x10 are unused and treated as bytes in the .mpy load/save and freezing code, this bug did not show any symptoms, since nested unwind jumps would rarely (if ever) reach a depth of 16 (so the extra byte of this opcode would be between 0x01 and 0x0f and be correctly loaded/saved/frozen simply as an undefined opcode). This patch fixes this bug by correctly accounting for the additional byte. .
2019-09-02py/binary: Change mp_uint_t to size_t for index, size, align args.Damien George
Reduces code size for nan-box builds, otherwise changes nothing.
2019-09-02py/modstruct: Fix struct.pack_into with unaligned offset of native type.Damien George
Following the same fix for unpack.
2019-09-02py/modstruct: Fix struct.unpack with unaligned offset of native type.Tom McDermott
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-08-31py/objtuple: Allow compatible subclasses of tuple in mp_obj_tuple_get.Jeff Epler
As part of this patch a private macro mp_obj_is_tuple_compatible is introduced to encapsulate the check, which is used in two locations. Fixes #5005.
2019-08-30travis: Add new job to test unix port with sys.settrace enabled.Damien George
2019-08-30tools/mpy-tool.py: Add initial support for frozen with settrace.Damien George
2019-08-30esp8266: Put new profile code in iROM.Damien George
2019-08-30py/profile: Add debugging for sys.settrace feature.Milan Rossa
2019-08-30tests: Add tests for sys.settrace feature.Milan Rossa
2019-08-30py: Integrate sys.settrace feature into the VM and runtime.Milan Rossa
This commit adds support for sys.settrace, allowing to install Python handlers to trace execution of Python code. The interface follows CPython as closely as possible. The feature is disabled by default and can be enabled via MICROPY_PY_SYS_SETTRACE.
2019-08-30py/profile: Add initial implementation of sys.settrace feature.Milan Rossa
2019-08-30py/bc: Factor out code to get bytecode line number info into new func.Damien George
2019-08-30py/compile: Improve the line numbering precision for lambdas.Damien George
Prior to this patch the line number for a lambda would be "line 1" if the body of the lambda contained only a simple expression (with no line number stored in the parse node). Now the line number is always reported correctly.
2019-08-29stm32/stm32_it: Include correct EXTI interrupt handlers for L0 MCUs.Damien George
2019-08-28nrf: Clean up source by removing tabs, trailing spaces, non-ASCII chars.Damien George
2019-08-28esp32: Add 'config' function to network.LAN, reusing network.WLAN.Eric Poulsen
2019-08-28docs/reference/speed_python: Add missing self to var caching example.Paul m. p. P
2019-08-28stm32/extint: Fix EXTI mapping of PVD and RTC events for H7 MCUs.iabdalkader
2019-08-28tests: Split out test for optimisation level and line-no printing.Damien George
2019-08-28py: Add global default_emit_opt variable to make emit kind persistent.Damien George
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-28mpy-cross/main: Only accept full emit cmdline options if native enabled.Damien George
2019-08-28unix/main: Only accept full emit cmd-line options if native enabled.Damien George
2019-08-28stm32/boards/PYBD_SF2: Exclude certain things when building mboot.Damien George
2019-08-28stm32/mboot/Makefile: Define "BUILDING_MBOOT" when building mboot.Damien George
So boards can configure their settings based on whether mboot or the main firmware is being built.
2019-08-28stm32/mphalport: Put PYBD specific MAC code in board specific file.Damien George
2019-08-28py/vm: Don't add traceback info for exceptions that are re-raised.Damien George
With this patch exceptions that are re-raised have improved tracebacks (less confusing, match CPython), and it makes re-raise slightly more efficient (in time and RAM) because they no longer need to add a traceback. Also general VM performance is not measurably affected. Partially fixes issue #2928.
2019-08-28py/vm: Don't add traceback info for exc's propagated through a finally.Damien George
With this patch exception tracebacks that go through a finally are improved (less confusing, match CPython), and it makes finally's slightly more efficient (in time and RAM) because they no longer need to add a traceback. Partially fixes issue #2928.
2019-08-27py/py.mk: Remove trailing spaces at end of line.Damien George
2019-08-22extmod/crypto-algorithms: Add source to header and populate copyright.Damien George
As per the README.md of the upstream source at https://github.com/B-Con/crypto-algorithms, this source code was released into the public domain, so make that explicit in the copyright line in the header.
2019-08-22py/vm: Shorten error message for not-implemented opcode.Damien George
It's really an opcode that's not implemented, so use "opcode" instead of "byte code". And remove the redundant "not implemented" text because that is already implied by the exception type. There's no need to have a long error message for an exception that is almost never encountered. Saves about 20 bytes of code size on most ports.
2019-08-22py/bc0.h: Add comment that MP_BC_MAKE_CLOSURE/_DEFARGS take extra byte.Damien George
2019-08-22py/objgenerator: Move defn of mp_const_GeneratorExit_obj here.Damien George
Because the mp_obj_exception_t type is now globally available.
2019-08-22py/runtime: Remove obsolete comment about mp_parse_compile_execute.Damien George
mp_locals_get/set and mp_globals_get/set are now static-inline functions so this comment is no longer correct.
2019-08-22tests/extmod: Split json.loads of bytes/bytearray into separate test.Damien George
Because this functionality was introduced in Python 3.6.
2019-08-22extmod/modujson: Support passing bytes/bytearray to json.loads.Damien George
CPython allows this, and it can be useful to reduce the number of memory allocations. Fixes issue #5031.
2019-08-22py/emitbc: Make all emit_write_bytecode_* funcs take a stack_adj arg.Damien George
This factoring of code gives significant code-size savings: bare-arm: -456 -0.682% minimal x86: -844 -0.547% unix x64: -472 -0.095% unix nanbox: -1348 -0.303% stm32: -472 -0.130% PYBV10 cc3200: -448 -0.242% esp8266: -708 -0.108% esp32: -400 -0.036% GENERIC nrf: -520 -0.356% pca10040 samd: -456 -0.448% ADAFRUIT_ITSYBITSY_M4_EXPRESS
2019-08-22py/emitbc: Rewrite switch in load_const_tok to reduce code size.Damien George
2019-08-21esp8266/machine_uart: Allow remapping UART TX/RX pins from 1/3 to 15/13.Damien George
Via the standard tx/rx arguments: UART(0, 115200, tx=Pin(15), rx=Pin(13)). Resolves issue #4718.
2019-08-20samd: Add minimum config for Atmel SAMD21-XPLAINED-PRO board.roland van straten
2019-08-20esp32: Add esp32.Partition class to expose partition and OTA funcs.Damien George
Partitions are exposed as a standard MicroPython block device.
2019-08-20extmod: Give vars/funcs unique names so STATIC can be set to nothing.Damien George
Fixes issue #5018.
2019-08-20extmod/moducryptolib: Use "static" not "STATIC" for inline functions.Damien George
2019-08-20qemu-arm: Add testing of frozen native modules.Jim Mussared
- Split 'qemu-arm' from 'unix' for generating tests. - Add frozen module to the qemu-arm test build. - Add test that reproduces the requirement to half-word align native function data.