<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/objfun.c, branch 6.0.0-alpha.1</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.0.0-alpha.1</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.0.0-alpha.1'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2020-01-18T01:36:08+00:00</updated>
<entry>
<title>Refine iMX RT memory layout and add three boards</title>
<updated>2020-01-18T01:36:08+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2020-01-09T04:32:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7d8dac9211dab92d750a0351335b4ad3fffc05e2'/>
<id>urn:sha1:7d8dac9211dab92d750a0351335b4ad3fffc05e2</id>
<content type='text'>
Introduces a way to place CircuitPython code and data into
tightly coupled memory (TCM) which is accessible by the CPU in a
single cycle. It also frees up room in the corresponding cache for
intermittent data. Loading from external flash is slow!

The data cache is also now enabled.

Adds support for the iMX RT 1021 chip. Adds three new boards:
* iMX RT 1020 EVK
* iMX RT 1060 EVK
* Teensy 4.0

Related to #2492, #2472 and #2477. Fixes #2475.
</content>
</entry>
<entry>
<title>Fix bad call to mp_arg_check_num</title>
<updated>2019-11-06T01:49:47+00:00</updated>
<author>
<name>Thea Flowers</name>
<email>me@thea.codes</email>
</author>
<published>2019-11-06T01:49:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3439c3619753955b6368fc91acec3e14c76c6dd3'/>
<id>urn:sha1:3439c3619753955b6368fc91acec3e14c76c6dd3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow boards to enable the `micropython.native` decorator</title>
<updated>2019-11-05T22:27:53+00:00</updated>
<author>
<name>Thea Flowers</name>
<email>me@thea.codes</email>
</author>
<published>2019-10-29T17:11:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c7195c4bc5a43f0aae731f3030961b60d1db4cac'/>
<id>urn:sha1:c7195c4bc5a43f0aae731f3030961b60d1db4cac</id>
<content type='text'>
Adds the `CIRCUITPY_ENABLE_MPY_NATIVE` for `mpconfigboard.mk` that enables
the `micropython.native` decorator.
</content>
</entry>
<entry>
<title>More make_new fixes for unix build</title>
<updated>2019-01-18T19:53:09+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-01-18T19:53:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0318a9a9bcbceab308323788cb9e579da166710e'/>
<id>urn:sha1:0318a9a9bcbceab308323788cb9e579da166710e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py changes for supporting superclass constructors that take kwargs</title>
<updated>2019-01-15T01:29:19+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2019-01-14T23:14:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=72d993d60c5e5238942491df00776ca31f9758a1'/>
<id>urn:sha1:72d993d60c5e5238942491df00776ca31f9758a1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objfun: Fix variable name in DECODE_CODESTATE_SIZE() macro.</title>
<updated>2018-05-17T01:20:06+00:00</updated>
<author>
<name>Tom Collins</name>
<email>tom.collins@digi.com</email>
</author>
<published>2018-05-17T00:08:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a883fe12d95953e9aa705f0050da1b61ae54ec8d'/>
<id>urn:sha1:a883fe12d95953e9aa705f0050da1b61ae54ec8d</id>
<content type='text'>
This patch fixes the macro so you can pass any name in, and the macro will
make more sense if you're reading it on its own.  It worked previously
because n_state is always passed in as n_state_out_var.
</content>
</entry>
<entry>
<title>py: Convert all uses of alloca() to use new scoped allocation API.</title>
<updated>2017-12-11T02:49:09+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2017-11-26T12:37:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=1e5a33df413bbd8a8aa5bd880be445c684fc5506'/>
<id>urn:sha1:1e5a33df413bbd8a8aa5bd880be445c684fc5506</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objfun: Factor out macro for initializing codestate.</title>
<updated>2017-12-09T10:49:00+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2017-12-09T10:45:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=2b00181592b23e5ca97464791c1ffa56e9495489'/>
<id>urn:sha1:2b00181592b23e5ca97464791c1ffa56e9495489</id>
<content type='text'>
This is second part of fun_bc_call() vs mp_obj_fun_bc_prepare_codestate()
common code refactor. This factors out code to initialize codestate
object. After this patch, mp_obj_fun_bc_prepare_codestate() is effectively
DECODE_CODESTATE_SIZE() followed by allocation followed by
INIT_CODESTATE(), and fun_bc_call() starts with that too.
</content>
</entry>
<entry>
<title>py/objfun, vm: Add comments on codestate allocation in stackless mode.</title>
<updated>2017-12-09T09:01:34+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2017-12-09T08:57:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d72370def72c74ca98c1ec4eb7b58ba0fbcc9629'/>
<id>urn:sha1:d72370def72c74ca98c1ec4eb7b58ba0fbcc9629</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objfun: Factor out macro for decoding codestate size.</title>
<updated>2017-12-09T07:19:34+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2017-12-09T07:19:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fca1d1aa62306fc523d192c1e2dd2d20dccbe94f'/>
<id>urn:sha1:fca1d1aa62306fc523d192c1e2dd2d20dccbe94f</id>
<content type='text'>
fun_bc_call() starts with almost the same code as
mp_obj_fun_bc_prepare_codestate(), the only difference is a way to
allocate the codestate object (heap vs stack with heap fallback).
Still, would be nice to avoid code duplication to make further
refactoring easier.

So, this commit factors out the common code before the allocation -
decoding and calculating codestate size. It produces two values,
so structured as a macro which writes to 2 variables passed as
arguments.
</content>
</entry>
</feed>
