summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* py/objgetitemiter: Typo fix in comment.Paul Sokolovsky2016-01-23
|
* unix/modsocket: accept(): Make IPv6-clean.Paul Sokolovsky2016-01-21
| | | | By reserving enough space for peer address.
* stmhal: Add os.statvfsDave Hylands2016-01-19
| | | | | Implement enough of statvfs to determine the amount of free space on a volume.
* py: Add ustruct.pack_into and unpack_fromDave Hylands2016-01-19
|
* .travis.yml: Switch to Ubuntu 14.04 Trusty.Paul Sokolovsky2016-01-17
| | | | | This allows to cut number of packages installed from 3rd-party package repos, and otherwise cut number of overrides and hacks.
* extmod/modurandom: Make yasmarang() function static.Paul Sokolovsky2016-01-17
|
* extmod/modurandom: Add "urandom" module.Paul Sokolovsky2016-01-17
| | | | | | | | Seedable and reproducible pseudo-random number generator. Implemented functions are getrandbits(n) (n <= 32) and seed(). The algorithm used is Yasmarang by Ilya Levin: http://www.literatecode.com/yasmarang
* pic16bit: Minor updates to types to allow port to compile again.Damien George2016-01-16
|
* unix/modffi: Allow to compile modffi in OBJ_REPR_D mode.Damien George2016-01-15
|
* unix/.gitignore: Add nanbox build output to ignore list.Damien George2016-01-15
|
* travis: Add unix NaN-boxing build to Travis builds.Damien George2016-01-15
| | | | This will help make sure new commits work with OBJ_REPR_D.
* unix: Add option to build 64-bit NaN-boxing interpreter.Damien George2016-01-15
| | | | Build using: make nanbox
* py/objproperty: Fix static struct to build with OBJ_REPR_D.Damien George2016-01-15
|
* builtin property: accept keyword argumentschrysn2016-01-14
| | | | | | | | | | this allows python code to use property(lambda:..., doc=...) idiom. named versions for the fget, fset and fdel arguments are left out in the interest of saving space; they are rarely used and easy to enable when actually needed. a test case is included.
* tests: Remove builtin_dict teststijn2016-01-14
| | | | This is essentially a duplicate of obj_dict.py
* docs: Several minor changes: network, pyb, ADCAll and inline asm.Peter Hinch2016-01-13
|
* py: Use new code pattern for parsing kw args with mp_arg_parse_all.Damien George2016-01-13
| | | | Makes code easier to read and more maintainable.
* py/emitglue: Use mp_obj_is_float instead of MP_OBJ_IS_TYPE.Damien George2016-01-13
|
* py: unary_op enum type fix, and a cast to remove clang warningAntonin ENFRUN2016-01-12
|
* unix: Allow to build coverage build with OBJ_REPR_D.Damien George2016-01-11
|
* unix: Add socket.inet_ntop functionDave Hylands2016-01-11
|
* py: Change first arg of type.make_new from mp_obj_t to mp_obj_type_t*.Damien George2016-01-11
| | | | | | | | The first argument to the type.make_new method is naturally a uPy type, and all uses of this argument cast it directly to a pointer to a type structure. So it makes sense to just have it a pointer to a type from the very beginning (and a const pointer at that). This patch makes such a change, and removes all unnecessary casting to/from mp_obj_t.
* py: Change type signature of builtin funs that take variable or kw args.Damien George2016-01-11
| | | | | With this patch the n_args parameter is changed type from mp_uint_t to size_t.
* py: Change type of .make_new and .call args: mp_uint_t becomes size_t.Damien George2016-01-11
| | | | | | | This patch changes the type signature of .make_new and .call object method slots to use size_t for n_args and n_kw (was mp_uint_t. Makes code more efficient when mp_uint_t is larger than a machine word. Doesn't affect ports when size_t and mp_uint_t have the same size.
* extmod: Fix uctypes size calculation for bitfieldsDave Hylands2016-01-10
|
* unix/modtime: strftime(): Support 2nd argument, but as time_t value.Paul Sokolovsky2016-01-10
| | | | Instead of struct tm like structure, as required by CPython.
* py: Remove long-obsolete mp_method_t typedef.Damien George2016-01-10
|
* examples/unix: Rename example be importable as modules.Paul Sokolovsky2016-01-09
| | | | Replace hyphens with undescores in modules.
* tests: Fix math_fun_special test so it passes with single prec float.Damien George2016-01-08
|
* py/objint: Fix classification of float so it works for OBJ_REPR_D.Damien George2016-01-08
|
* py/mpz: Fix conversion of float to mpz so it works on big endian archs.Damien George2016-01-08
|
* tests: Allow float tests to run when MATH_SPECIAL_FUNCTIONS is disabled.Damien George2016-01-08
|
* py/runtime: Use appropriate printf fmt for malloc num_bytes.Damien George2016-01-08
|
* py/smallint: Allow to override MP_SMALL_INT_MIN et al.Damien George2016-01-08
| | | | | This allows a port to specify exactly how many bits are in a small int (eg for a uPy bytecode cross compiler).
* py/obj: For OBJ_REPR_D, use uint32_t cast when extracting qstr value.Damien George2016-01-08
|
* py/parse: Include unistd.h for ssize_t definition.Damien George2016-01-08
| | | | In some cases ssize_t is not defined by already included headers.
* py/emitglue: Add more feature flags to .mpy persistent bytecode output.Damien George2016-01-08
| | | | | Need to record in .mpy file whether unicode is enabled, and how many bits are in a small int.
* esp8266: Support CFLAGS_EXTRA.Paul Sokolovsky2016-01-08
|
* minimal: Add enough code to run minimal build on STM32F4xx hardware.Damien George2016-01-07
| | | | | | Minimal support code for a Cortex-M CPU is added, along with set-up code for an STM32F4xx MCU, including a UART for a REPL. Tested on a pyboard. Code size is 77592 bytes.
* py/viper: Truncate viper integer args so they can be up to 32-bit.Damien George2016-01-07
|
* stmhal: Remove custom mod_machine_mem_get_{read,write}_addr functions.Damien George2016-01-07
| | | | They are no longer needed because stm constants can now be 32 bits wide.
* stmhal: Make stm constants big ints when they don't fit in a small int.Damien George2016-01-07
| | | | | Adds 924 bytes of code, but means that no more hacks and work-arounds are needed due to large constants becoming negative.
* py/inlinethumb: Remove 30-bit restriction on movwt instruction.Damien George2016-01-07
| | | | movwt can now move a full 32-bit constant into a register.
* py/inlinethumb: Allow assembler to use big ints as args to instructions.Damien George2016-01-07
|
* py/parse: Improve constant folding to operate on small and big ints.Damien George2016-01-07
| | | | | | | | | | | | | | | Constant folding in the parser can now operate on big ints, whatever their representation. This is now possible because the parser can create parse nodes holding arbitrary objects. For the case of small ints the folding is still efficient in RAM because the folded small int is stored inplace in the parse node. Adds 48 bytes to code size on Thumb2 architecture. Helps reduce heap usage because more constants can be computed at compile time, leading to a smaller parse tree, and most importantly means that the constants don't have to be computed at runtime (perhaps more than once). Parser will now be a little slower when folding due to calls to runtime to do the arithmetic.
* py: Change mp_obj_int_is_positive to more general mp_obj_int_sign.Damien George2016-01-07
| | | | This function returns the sign (-1, 0 or 1) of the integer object.
* py/parse: Optimise away parse node that's just parenthesis around expr.Damien George2016-01-07
| | | | | | | | | | Before this patch, (x+y)*z would be parsed to a tree that contained a redundant identity parse node corresponding to the parenthesis. With this patch such nodes are optimised away, which reduces memory requirements for expressions with parenthesis, and simplifies the compiler because it doesn't need to handle this identity case. A parenthesis parse node is still needed for tuples.
* docs: Include extra functions in time documentation for pyboard.Henrik Sölver2016-01-04
|
* docs: Add link from pyboard switch tutorial to ISR rules document.Damien George2016-01-04
|
* py/modbuiltins: Fix access of mp_obj_t variable, wrap in MP_OBJ_TO_PTR.Damien George2016-01-04
|