micropython

Changelog

(0) -100 -10 +10 +100 +300 tip
102:160e3ccc7dd6
2008-07-18 Paul Boddie changeset files shortlog graph Simplified temporary storage access instructions (using one instruction, not a sequence). Introduced exception handler stack instructions. Improved Raise node support.
micropython/ast.py micropython/rsvp.py
101:915efb968743
2008-07-18 Paul Boddie changeset files shortlog graph Removed the value stack mechanisms. Added and/not/or support. Added a test of logical operators.
micropython/ast.py micropython/rsvp.py tests/logical.py
100:00ce6c2f0440
2008-07-15 Paul Boddie changeset files shortlog graph Changed the code generator to reject unsupported AST nodes.
micropython/ast.py micropython/common.py
99:721d44d4eaf8
2008-07-15 Paul Boddie changeset files shortlog graph Fix exception handler inspection. Added traceback switch on the test program. Added docstring.
micropython/ast.py micropython/inspect.py test.py
98:3b2507704957
2008-06-30 Paul Boddie changeset files shortlog graph Attempted to improve invocations by adopting explicitly populated frames. Attempted to resolve the context generation and validation strategy. Attempted to improve optimisations, incorporating constant storage optimisations into the new_op method and adding better tests for side-effect-resistant operations suitable for stack optimisations, incorporating last invocation tracking. Changed the internal stack operation descriptions to use explicit classes, since a distinct StackLoad instruction is now used (as opposed to StackPull which was previously StackLoad, and StackPush which was previously StackSave). Added LoadAddressContext and StoreAddressContext to address the issue of loading class-originating attributes via an instance (predicted using self). Removed various obsolete instructions and added stack operations to others. Added a test of for loops.
docs/invocation.txt micropython/ast.py micropython/data.py micropython/rsvp.py rsvp.py tests/for.py
97:78240b642d1f
2008-06-28 Paul Boddie changeset files shortlog graph Added exception handler variable definition support to the inspection process. Introduced frame position tracking in order to more accurately track and assign stack element usage, employing special methods to be used around function invocation code generation. Added some support for raise statement code generation. Simplified the remove_op_using_stack method and made more use of the actual stack element information found in StackLoad operations. Introduced a LoadResult instruction. Added a test of simple exception raising and handling.
micropython/ast.py micropython/inspect.py micropython/rsvp.py tests/exception.py
96:2300627a338d
2008-06-22 Paul Boddie changeset files shortlog graph Added missing module attribute test files.
tests/imported.py tests/importer.py
95:5e9482ffb9a7
2008-06-22 Paul Boddie changeset files shortlog graph Fixed CheckSelf generation (using only the first argument of an invocation). Overhauled stack usage by incorporating stack accesses and results in many instructions, calculating usage as instructions are added and removed. Removed ResetStack since the stack should now be a detail in the compilation process. Introduced a StackReplace mix-in in order to more correctly model various instructions.
micropython/ast.py micropython/rsvp.py
94:7b78ddb23be6
2008-06-21 Paul Boddie changeset files shortlog graph Added support for the detection of module attribute assignment. Added some more tests of module assignment. Introduced better system path initialisation based on the program being inspected.
docs/rationale.txt micropython/inspect.py test.py tests/failure/imported.py tests/failure/importer.py
93:de8cd27e721d
2008-06-16 Paul Boddie changeset files shortlog graph Added internal stack operations to instructions in order to support stack avoidance optimisations (where operands are loaded from other places than the stack). Replaced Pop with ResetStack. Added code and code_location attributes to the Importer class; made the test program's machine function use an Importer instance which provides such attributes for the initialisation of the RSVPMachine.
micropython/__init__.py micropython/ast.py micropython/rsvp.py test.py
(0) -100 -10 +10 +100 +300 tip