237 Commits (57b96a7be214c8f2493db7d430348f5efcc8ad34)

Author SHA1 Message Date
Damien George 8f54c08691 py/inlineasm: Add ability to specify return type of asm_thumb funcs. 9 years ago
Damien George 93b3726240 py/parse: Optimise away parse node that's just parenthesis around expr. 9 years ago
Damien George dd5353a405 py: Add MICROPY_ENABLE_COMPILER and MICROPY_PY_BUILTINS_EVAL_EXEC opts. 9 years ago
Damien George a83124361e py/compile: Simplify compilation of comprehension iterators. 9 years ago
Damien George 831137b807 py/compile: Use size_t or uintptr_t instead of mp_uint_t. 9 years ago
Damien George 29e9db0c58 py: Fix compiler to handle lambdas used as default arguments. 9 years ago
Damien George 33ac0fd09f py: Don't try to optimise for+range when args are not simple expressions. 9 years ago
Damien George b8cfb0d7b2 py: Add support for 64-bit NaN-boxing object model, on 32-bit machine. 9 years ago
Damien George c3f64d9799 py: Change qstr_* functions to use size_t as the type for str len arg. 9 years ago
Damien George 9a56912ad1 py/compile: Do proper checking of * and ** in function definition. 9 years ago
Damien George d4dba88236 py/compile: Add mp_compile_to_raw_code() to return raw code object. 9 years ago
Damien George 2c83894257 py: Implement default and star args for lambdas. 9 years ago
Damien George cbd9ae5256 py/compile: Don't unnecessarily save state when compiling param list. 9 years ago
Damien George 3a3db4dcf0 py: Put all bytecode state (arg count, etc) in bytecode. 9 years ago
Damien George d7e3b36a09 py/compile: Remove unnecessary label in compilation of for statement. 9 years ago
Damien George 64f2b213bb py: Move constant folding from compiler to parser. 9 years ago
Damien George b948de36fb py: Don't generate unnecessary parse nodes for assignment or kwargs. 9 years ago
Damien George 7e12a601b8 py/compile: Fix edge case when constant-folding negation of integer. 9 years ago
Damien George 0496de26d3 py: Allow to enable inline assembler without native emitter. 9 years ago
Damien George 58e0f4ac50 py: Allocate parse nodes in chunks to reduce fragmentation and RAM use. 9 years ago
Damien George e5635f4ab3 py: Catch all cases of integer (big and small) division by zero. 9 years ago
Damien George 9d5e5c08ab py/compile: Put compiler state on the C stack. 9 years ago
Damien George fbcaf0ea18 py: Slightly simplify compile and emit of star/double-star arguments. 9 years ago
Delio Brignoli e6978a4e26 py: Fix call args when a stararg is followed by keyword args. 9 years ago
Damien George 558a016e2c py/compile: Refine SyntaxError for repeated use of global/nonlocal. 9 years ago
Damien George ea5b59bfe6 py/compile: Only compile function annotations if really needed. 9 years ago
Damien George 7f70b60f4d py: Remove unused compile scope flags, and irrelevant flag compute code. 9 years ago
Damien George 65dc960e3b unix-cpy: Remove unix-cpy. It's no longer needed. 9 years ago
Damien George cfc4c33801 py/compile: Give more precise line number for compile errors. 9 years ago
Damien George 84d59c2873 py: For viper compile errors, add traceback with function and filename. 9 years ago
Damien George 59fba2d6ea py: Remove mp_load_const_bytes and instead load precreated bytes object. 10 years ago
Damien George c8b60f013b py: Make viper codegen raise proper exception (ViperTypeError) on error. 10 years ago
Damien George 55fe92bb8f py: Remove old debugging printf's in compile.c. 10 years ago
Damien George 91bc32dc16 py: Provide typedefs for function types instead of writing them inline. 10 years ago
Damien George 4dea922610 py: Adjust some spaces in code style/format, purely for consistency. 10 years ago
Damien George 4112590a60 py, compiler: When just bytecode, make explicit calls instead of table. 10 years ago
Damien George a210c774f9 py, compiler: Remove emit_pass1 code, using emit_bc to do its job. 10 years ago
Damien George 542bd6b4a1 py, compiler: Refactor load/store/delete_id logic to reduce code size. 10 years ago
Damien George 44f65c0e2f py: Fix bug in compiler which allowed through illegal augmented assign. 10 years ago
Damien George aedf583af2 py: Simplify some logic in compiler; add comments about CPython compat. 10 years ago
Damien George 1ef26b35c1 py, extmod: Remove include of unnecessary system headers. 10 years ago
Damien George 42e0c59308 py: Add MICROPY_COMP_{DOUBLE,TRIPLE}_TUPLE_ASSIGN config options. 10 years ago
Damien George a77ffe66b2 py: In compiler, put macro guard around potentially unused asm vars. 10 years ago
Damien George 3665d0b2ff py: Simplify some inline-assembler error messages, but retain meaning. 10 years ago
Damien George 9c5cabb502 py: Give error for duplicate label in inline assembler. 10 years ago
Damien George 62a3a287d9 py: Set compiler scope before folding constants so error messages work. 10 years ago
Damien George 7711afbb4a py: Combine complie functions for or_test/and_test to reduce code size. 10 years ago
Damien George 63f3832e81 py: Combine emit functions for jump true/false to reduce code size. 10 years ago
Damien George 0b2fd91890 py: Combine logic for compiling and/or tests, to reduce code size. 10 years ago
Damien George 0bb971370b py: Transform assert logic in compiler to save code space. 10 years ago