<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/bc.c, branch v1.5.2</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.5.2</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.5.2'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2015-12-17T12:33:42+00:00</updated>
<entry>
<title>py/bc: Use size_t instead of mp_uint_t to count size of state and args.</title>
<updated>2015-12-17T12:33:42+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-12-17T12:33:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=1d899e1783dd966452a40c6c29d6d8b8f9cd0e46'/>
<id>urn:sha1:1d899e1783dd966452a40c6c29d6d8b8f9cd0e46</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR.</title>
<updated>2015-11-29T14:25:35+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-11-27T17:01:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=999cedb90ff0827cdb9dfe0e4faa6ebc1739d271'/>
<id>urn:sha1:999cedb90ff0827cdb9dfe0e4faa6ebc1739d271</id>
<content type='text'>
This allows the mp_obj_t type to be configured to something other than a
pointer-sized primitive type.

This patch also includes additional changes to allow the code to compile
when sizeof(mp_uint_t) != sizeof(void*), such as using size_t instead of
mp_uint_t, and various casts.
</content>
</entry>
<entry>
<title>py: Make mp_setup_code_state take concrete pointer for func arg.</title>
<updated>2015-11-29T14:25:04+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-11-27T12:50:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9f6976b74e352d01bbfbb4b4d32465f9db5f3390'/>
<id>urn:sha1:9f6976b74e352d01bbfbb4b4d32465f9db5f3390</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Add MICROPY_PERSISTENT_CODE_LOAD/SAVE to load/save bytecode.</title>
<updated>2015-11-13T12:49:18+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-11-02T21:55:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d8c834c95d506db979ec871417de90b7951edc30'/>
<id>urn:sha1:d8c834c95d506db979ec871417de90b7951edc30</id>
<content type='text'>
MICROPY_PERSISTENT_CODE must be enabled, and then enabling
MICROPY_PERSISTENT_CODE_LOAD/SAVE (either or both) will allow loading
and/or saving of code (at the moment just bytecode) from/to a .mpy file.
</content>
</entry>
<entry>
<title>py: Add constant table to bytecode.</title>
<updated>2015-11-13T12:49:18+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-10-23T00:23:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=713ea1800d1f0c82a0c75885ad034705556ab5ef'/>
<id>urn:sha1:713ea1800d1f0c82a0c75885ad034705556ab5ef</id>
<content type='text'>
Contains just argument names at the moment but makes it easy to add
arbitrary constants.
</content>
</entry>
<entry>
<title>py: Put all bytecode state (arg count, etc) in bytecode.</title>
<updated>2015-11-13T12:49:18+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-10-22T22:45:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3a3db4dcf0400cffef860f61a84979cb1f7a7541'/>
<id>urn:sha1:3a3db4dcf0400cffef860f61a84979cb1f7a7541</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Reorganise bytecode layout so it's more structured, easier to edit.</title>
<updated>2015-11-13T12:49:18+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-03-18T17:47:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9b7f583b0ca37ee87e5fb82e2d65fcd96a609b2f'/>
<id>urn:sha1:9b7f583b0ca37ee87e5fb82e2d65fcd96a609b2f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Eliminate some cases which trigger unused parameter warnings.</title>
<updated>2015-09-04T15:53:46+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-09-04T15:53:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3a2171e4061f3a6e3f00c28edf78ff9473355887'/>
<id>urn:sha1:3a2171e4061f3a6e3f00c28edf78ff9473355887</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Add %q format support to mp_[v]printf, and use it.</title>
<updated>2015-04-16T14:30:16+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-04-11T12:03:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=044c473de203b4dbe93874813b430fb6336db2b2'/>
<id>urn:sha1:044c473de203b4dbe93874813b430fb6336db2b2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py: Implement full func arg passing for native emitter.</title>
<updated>2015-04-07T21:43:28+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-04-06T21:38:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9988618e0e0f5c319e31b135d993e22efb593093'/>
<id>urn:sha1:9988618e0e0f5c319e31b135d993e22efb593093</id>
<content type='text'>
This patch gets full function argument passing working with native
emitter.  Includes named args, keyword args, default args, var args
and var keyword args.  Fully Python compliant.

It reuses the bytecode mp_setup_code_state function to do all the hard
work.  This function is slightly adjusted to accommodate native calls,
and the native emitter is forced a bit to emit similar prelude and
code-info as bytecode.
</content>
</entry>
</feed>
