Linaro Git Browser
Code Review
Sign In
review.linaro.org
/
lite
/
micropython
/
5e34909a12b15a8edab45c9f8f0915e2abb23b76
/
py
/
compile.c
f41fdd0
py: Unify syntax error handling in compiler; check defualt arg syntax.
by Damien George
· 11 years ago
1dc76af
py: Remove name of var arg from macros with var args.
by Damien George
· 11 years ago
56e5ef2
parse: Refactor parse node encoding to support full range of small ints.
by Paul Sokolovsky
· 11 years ago
bbf0e2f
parse: Note that fact that parser's small ints are different than VM small int.
by Paul Sokolovsky
· 11 years ago
a1aba36
compile: Add comments ergarding non-implemented relative imports.
by Paul Sokolovsky
· 11 years ago
8725f8f
py: Pass all scope flags through to runtime.
by Damien George
· 11 years ago
520e2f5
Replace global "static" -> "STATIC", to allow "analysis builds". Part 2.
by Paul Sokolovsky
· 11 years ago
2f0b026
Clean up handling of function return type annotation.
by Paul Sokolovsky
· 11 years ago
bbcd49a
py: Fix compile of class with keyword arguments in bases.
by Damien George
· 12 years ago
35e2a4e
py: Add built-in super.
by Damien George
· 12 years ago
9aa2a52
py: Tidy up BINARY_OPs; negation done by special NOT bytecode.
by Damien George
· 12 years ago
7e5fb24
py: Reduce code size of compiler by a bit.
by Damien George
· 12 years ago
cbddb27
py: Implement break/continue from an exception with finally.
by Damien George
· 12 years ago
9075002
Implement default function arguments (for Python functions).
by Paul Sokolovsky
· 12 years ago
08d0755
py: Fix bug with LOAD_METHOD; fix int->machine_int_t for small int.
by Damien George
· 12 years ago
e4b6a07
py: Implement 'not' in compiler, and improve rt_is_true.
by Damien George
· 12 years ago
41d02b6
py: Improve freeing of emitters in mp_compile.
by Damien George
· 12 years ago
f46d87a
Add support for freeing code emitter objects at the end of compilation.
by Paul Sokolovsky
· 12 years ago
fd31358
mp_compile(): Properly free module_scope and all nested scopes.
by Paul Sokolovsky
· 12 years ago
b979122
py: Use C99 way of variable macro arguments.
by Damien George
· 12 years ago
00208ce
py: Change macro var args in parser to be C99 compliant.
by Damien George
· 12 years ago
600ae73
py: Implement break and continue byte codes, and add tests.
by Damien George
· 12 years ago
55baff4
Revamp qstrs: they now include length and hash.
by Damien George
· 12 years ago
cbd2f74
py: Add module/function/class name to exceptions.
by Damien George
· 12 years ago
0833500
Add source file name and line number to error messages.
by Damien George
· 12 years ago
d02c6d8
Implement eval.
by Damien George
· 12 years ago
e5863d9
py: AssertionError is loaded from global, to match CPython.
by Damien George
· 12 years ago
b8698fc
unified the bops
by John R. Lenton
· 12 years ago
899c69f
compile_for_stmt_optimised_range(): Properly handle negative & unknown steps.
by Paul Sokolovsky
· 12 years ago
71c5181
Convert Python types to proper Python type hierarchy.
by Damien George
· 12 years ago
eb7bfcb
Split qstr into pools, and put initial pool in ROM.
by Damien George
· 12 years ago
e67ed5d
Improve configurability for native x64/thumb emitter.
by Damien George
· 12 years ago
1fb0317
Change mp_compile so that it returns a function object for the module.
by Damien George
· 12 years ago
fe8fb91
py: remove depedence on strcat and stpcpy.
by Damien George
· 12 years ago
6baf76e
py: make closures work.
by Damien George
· 12 years ago
732407f
Change memory allocation API to require size for free and realloc.
by Damien
· 12 years ago
d99b052
Change object representation from 1 big union to individual structs.
by Damien
· 12 years ago
e2880aa
Fix a few compiler warnings.
by Damien
· 12 years ago
a1b2693
py: remove further unnecessary emit_verbatim code.
by Damien
· 12 years ago
e388f10
py: fix bug with doc string not recognised after first newline of file.
by Damien
· 12 years ago
02f8941
py: reduce use of emit_verbatim calls to minimum.
by Damien
· 12 years ago
9ecbcff
py: work towards working closures.
by Damien
· 12 years ago
318aec6
py: emit correct id for closed over variables.
by Damien
· 12 years ago
6332174
py: compiler supports string juxtaposition=concatenation.
by Damien
· 12 years ago
db4c361
py: add skeletal import functionality.
by Damien
· 12 years ago
d793389
py: restrict further when for-range optimisation is done.
by Damien
· 12 years ago
0446a0d
Change some debugging/output messages for native code generation.
by Damien
· 12 years ago
f3822fc
Fix but with optimised range being 1 over.
by Damien
· 12 years ago
f72fd0e
Add optimisation for "for x in range".
by Damien
· 12 years ago
27fb45e
Add local_num skeleton framework to deref/closure emit calls.
by Damien
· 12 years ago
5ac1b2e
Implement REPL.
by Damien
· 12 years ago
ce89a21
Implement basic exception framework, and simple for loop.
by Damien
· 12 years ago
3ef4abb
Change ifdef/if defined to simple if's.
by Damien
· 12 years ago
0efb3a1
Tidy up SMALL_INT optimisations and CPython compatibility.
by Damien
· 12 years ago
3a20517
Option in compile.c to emit compatible or not with CPython.
by Damien
· 12 years ago
c025ebb
Separate out mpy core and unix version.
by Damien
· 12 years ago
91d387d
Improve indent/dedent error checking and reporting.
by Damien
· 12 years ago
13ed3a6
Native Python and Viper support for x64 and thumb all together.
by Damien
· 12 years ago
3410be8
Merge viper types with standard native emitter.
by Damien
· 12 years ago
7af3d19
Implement crude viper emit stage.
by Damien
· 12 years ago
dc83382
Make runtime able to call inline asm with 1 argument.
by Damien
· 12 years ago
b14de21
Optimise typedargslist_name to not create a node if just an id.
by Damien
· 12 years ago
a2f2f7d
Almost supports arguments for inline asm functions.
by Damien
· 12 years ago
826005c
Add support for inline thumb assembly.
by Damien
· 12 years ago
5bfb759
Incorporate emit_thumb into new emit framework.
by Damien
· 12 years ago
6cdd3af
Implement built-in decorators to select emit type.
by Damien
· 12 years ago
4b03e77
Factorise EMIT_COMMON calls, mostly into emit_pass1.
by Damien
· 12 years ago
054848a
Compiler computes labels and max_num_labels.
by Damien
· 12 years ago
b05d707
Further factorise PASS_1 out of specific emit code.
by Damien
· 12 years ago
415eb6f
Restructure emit so it goes through a method table.
by Damien
· 12 years ago
492d082
Use macro EMIT_COMMON for emit_common calls.
by Damien
· 12 years ago
429d719
Initial commit.
by Damien
· 12 years ago