aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-05-10stmhal: Fix setting of RTC: was BCD now BIN encoded.Damien George
Addresses issue #592.
2014-05-10stm: Reorder mpconfig.h header inclusion to get stm building.Damien George
2014-05-10py: Rename byte_code to bytecode everywhere.Damien George
bytecode is the more widely used. See issue #590.
2014-05-10mingw: Fix compilation issuesstijn
- use lowercase windows.h - fix for mingw32 using preprocessor-unfriendly definition of CLOCKS_PER_SEC
2014-05-10py: Fix base "detection" for int('0<hexdigit>', 16).Paul Sokolovsky
2014-05-10bytes: Implement comparison and other binary operations.Paul Sokolovsky
Should support everything supported by strings.
2014-05-10runtime0.h: Group binary ops by fives.Paul Sokolovsky
So one has some chance to convert numeric op code into symbol.
2014-05-09Merge pull request #575 from stinos/windows-modtimePaul Sokolovsky
Add modtime implementation for mingw
2014-05-09windows: Add modtime implementationstijn
2014-05-09Merge branch 'pfalcon-README-features-overview'Damien George
2014-05-09README: Add articles, and update doc for deploying firmware.Damien George
2014-05-09README: Add short overview of Python features supported.Paul Sokolovsky
Also, "upgrade" project to "early beta", and elaborate pyboard description.
2014-05-08Add gc.enable, gc.disable; remove pyb.gc.Damien George
2014-05-08stmhal: Add time.time() and time.localtime().Damien George
time.time: returns seconds since 1/1/2000, as an integer. time.localtime: Returns 8-tuple: (year, month, date, hour, minute, second, weekday, yearday).
2014-05-09Merge pull request #568 from stinos/windows-msvc-portPaul Sokolovsky
Windows MS Visual C port
2014-05-08Draft approach towards resolving ↵Paul Sokolovsky
https://github.com/micropython/micropython/issues/560#issuecomment-42213955
2014-05-08py, compiler: Add basic support for A=const(123).Damien George
You can now do: X = const(123) Y = const(456 + X) and the compiler will replace X and Y with their values. See discussion in issue #266 and issue #573.
2014-05-08Windows MSVC portstijn
Extend the windows port so it compiles with the toolchain from Visual Studio 2013
2014-05-08qemu-arm: fully integrated test suite.Ilya Dmitrichenko
This is primarily intended to provide testing of Thumb-specific code within Travis CI as well as if anyone else want to run it locally. As discussed in purposes. This is currently agains an emulated Cortex-M3 core, however in the near future it can extended to support M0, M0+ as well M4 (work in progress exists in sushihangover/qemu). It's probably true that most of the code base can be covered running uPy natively on a POSIX system, however we do have the tiny bit of assembly code. There may exist bugs related to endianness and type aliases, let alone potential standard library or compiler bugs or even architecture-specific optimisations. This could also incorporate lwIP (or other TCP/IP stack) integration as well as SDIO+FATFS drivers. The solution to inline the test cases was chose due to simplicity. It could alternatively be implemented in a number of different way (see #515), but this looked the simplest. Inclusion of tinytest was just to avoid writing boilerplate code for counting failed tests and other utility functions. Currently only a few functions are used, however this could be extended. Checking in the code instead of using submodule was a personal preference, but if people do want the pain of submodules, this can provided. This particular framework is also pretty good if one desires to run unit test on target. The approach with scripts being inlined is probably not quite suited for the size of memory an MCU has, but the tinytest itself should be good, if lower-level C code is to be unit tested.
2014-05-08tools: inline test suite generator.Ilya Dmitrichenko
2014-05-08tools: check-in errordeveloper/tinytest@eb2dbc858f6c3785468a96e98f2b944f10013163Ilya Dmitrichenko
2014-05-07py: Fix stack access in thumb native emitter.Damien George
2014-05-07Merge pull request #584 from stinos/windows-inputPaul Sokolovsky
windows: Fix input.c missing in Makefile after changes for #582
2014-05-07tests/bench: Add testcase for positional/kwargs to enumerate().Paul Sokolovsky
Inspired by discussion in #577. So, in this case of builtin function, passing args by keyword has less than 1% overhead.
2014-05-07tests/bench: Add tests for various ways to pass function args.Paul Sokolovsky
Passing 3 args with keywords is for example 50% slower than via positional args.
2014-05-07tests/bench: Add variation on loop_count/while_down_ne test.Paul Sokolovsky
2014-05-07tests/bench: Add testcases for lookup in 5-el instance and namedtuple.Paul Sokolovsky
... and we have not that bad mapping type after all - lookup time is ~ the same as in one-attr instance. My namedtuple implementation on the other hand degrades awfully. So, need to rework it. First observation is that named tuple fields are accessed as attributes, so all names are interned at the program start. Then, really should store field array as qstr[], and do quick 32/64 bit scan thru it.
2014-05-07tests/bench: Time namedtuple field access.Paul Sokolovsky
That's higher than instance field access - behold the power of hashing.
2014-05-07windows: Fix input.c missing in Makefile after changes for #582stijn
2014-05-07py: Fix emitcpy, to work with latest changes to PASS variables.Damien George
2014-05-07tests: Add a test for native code on pyboard.Damien George
2014-05-07tests: Add inline assembler test for pyboard.Damien George
2014-05-07py: Improve native emitter; now supports more opcodes.Damien George
2014-05-07py, compiler: Improve passes; add an extra pass for native emitter.Damien George
2014-05-07py, compiler: Start adding support for compile-time constants.Damien George
Just a start, no working code yet. As per issue #573.
2014-05-07unix: Add missing stdio.h header for readline.Damien George
2014-05-07Merge pull request #582 from dhylands/unix-inputDamien George
Add input command for unix
2014-05-07Add input command for unixDave Hylands
2014-05-07Merge pull request #581 from stinos/windows-mathDamien George
windows: Enable math module
2014-05-07windows: Enable math modulestijn
2014-05-07stream: Make non-blcoking stream support configurable.Paul Sokolovsky
Enable only on unix. To avoid unpleasant surprises with error codes.
2014-05-07unix modsocket: Add comments re: recv() vs read(), etc. semantics.Paul Sokolovsky
2014-05-07stream: Use standard name of DEFAULT_BUFFER_SIZE.Paul Sokolovsky
2014-05-07stream: Add compliant handling of non-blocking readall().Paul Sokolovsky
2014-05-07stream: Add compliant handling of non-blocking read()/write().Paul Sokolovsky
In case of empty non-blocking read()/write(), both return None. read() cannot return 0, as that means EOF, so returns another value, and then write() just follows. This is still pretty unexpected, and typical "if not len:" check would treat this as EOF. Well, non-blocking files require special handling! This also kind of makes it depending on POSIX, but well, anything else should emulate POSIX anyway ;-).
2014-05-06py, parser: Add commented-out code to discard doc strings.Damien George
Doesn't help with RAM reduction because doc strings are interned as soon as they are encountered, which is too soon to do any optimisations on them.
2014-05-06Merge branch 'master' of https://github.com/micropython/micropythonDamien George
Conflicts: py/argcheck.c py/objenumerate.c py/runtime.h
2014-05-06py: Add keyword arg support to enumerate constructor.Damien George
Need to have a policy as to how far we go adding keyword support to built ins. It's nice to have, and gets better CPython compatibility, but hurts the micro nature of uPy. Addresses issue #577.
2014-05-06py: bytes(), str(): Add NotImplementedError for kwargs.Paul Sokolovsky
Addresses #567.
2014-05-06py: enumerate(): Add NotImplementedError for kwargs.Paul Sokolovsky
Addresses #577.