406:7696283f6599
|
2011-03-21 |
Paul Boddie |
changeset
files
shortlog
graph
|
Fixed attribute coverage analysis to obtain the real identity of attributes in
order to properly follow attribute references.
Added various tests of instance attribute definition, usage and preservation. |
|
|
micropython/__init__.py micropython/inspect.py tests/attributes_instance_defined_in_method_used_by_subclass.py tests/attributes_instance_unused.py tests/attributes_instance_used_by_subclass.py
|
|
405:5c0225bbbd03
|
2011-03-20 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added support in the code generation for class attribute assignment, introducing
optimisation-related configuration of the support depending on whether attribute
usage is being tracked.
Prevented __class__ attribute assignment if detected at compile-time.
Added run-time support for class attribute assignment.
Added registration of instance attribute usage upon assignment.
Added a special attribute to exception instances, protecting it from vacuuming.
Fixed a test of class attribute assignment so that it can be run successfully. |
|
|
lib/builtins.py micropython/ast.py micropython/data.py micropython/inspect.py micropython/opt.py micropython/trans.py rsvp.py tests/attributes_class_assignment_unknown_alternatives.py
|
|
404:96c334ff4431
|
2011-03-19 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added tentative support for tracking attribute assignments together with attribute usage.
Added various tests of class attribute assignment which should eventually be supported.
Added missing tests. |
|
|
TO_DO.txt micropython/__init__.py micropython/common.py micropython/data.py micropython/inspect.py tests/abandoned_attribute_usage.py tests/attributes_class_assignment.py tests/attributes_class_assignment_indirect.py tests/attributes_class_assignment_unknown.py tests/attributes_class_assignment_unknown_alternatives.py ...
|
|
403:d8329b6ca1ca
|
2011-03-13 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added recording of attribute references as they are collected in order to record
the results of attribute usage inference.
Changed the graph module to show attribute usage relationships instead of mere
attribute ownership. |
|
|
micropython/__init__.py micropython/graph.py
|
|
402:c87bdb84d9d3
|
2011-02-27 |
Paul Boddie |
changeset
files
shortlog
graph
|
Introduced placeholder functions for print in order to let all tests pass.
Added TestIdentity and status-related optimisation suggestions. |
|
|
TO_DO.txt rsvplib.py
|
|
401:4a8dd27c2994
|
2011-02-27 |
Paul Boddie |
changeset
files
shortlog
graph
|
Switched back to providing a common __class__ attribute for instances,
intercepting __class__ accesses on classes during inspection, compilation and,
through appropriate instruction sequences, execution.
Exposed target details in the optimise_constant_accessor method's results.
Exposed dynamic/static details in the possible_accessor_types ASTVisitor
method's results.
Improved frame stack visualisation in the RSVP machine. |
|
|
TO_DO.txt docs/concepts.txt lib/builtins.py micropython/common.py micropython/data.py micropython/inspect.py micropython/opt.py micropython/rsvp.py micropython/trans.py rsvp.py ...
|
|
400:5c5cddf971cb
|
2011-02-26 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added tag feature-universal-__class__-attributes for changeset 83dc777c7083 |
|
|
.hgtags
|
|
399:83dc777c7083
|
2011-02-25 |
Paul Boddie |
changeset
files
shortlog
graph
|
Fixed constant raw image generation to actually refer to the class of each
constant.
Referenced NoneType and NotImplementedType so that the standard constants can be
generated.
Added a __class__ attribute to function instances.
Fixed exception raising so that __class__ is included in allocated exception
instances.
Fixed item retrieval from list fragments which had erroneously been changed to
resemble tuple item retrieval.
Fixed list fragment reference initialisation for list literals.
Added start and end parameters to the RSVPMachine.show method.
Added an up method to RSVPMachine as a complement to the step and run methods. |
feature-universal-__class__-attributes |
|
lib/builtins.py micropython/data.py micropython/rsvp.py micropython/trans.py rsvp.py rsvplib.py
|
|
398:62d65b1b7936
|
2011-02-20 |
Paul Boddie |
changeset
files
shortlog
graph
|
Improved exception block tracking in order to make sure that such blocks are
discarded when program units are exited.
Added a stack to track invocation frame state when handlers are defined,
although this could arguably be merged with the locals frame state handling. |
|
|
docs/exceptions.txt micropython/ast.py micropython/rsvp.py micropython/trans.py rsvp.py
|
|
397:7cc5058cbfb6
|
2011-02-20 |
Paul Boddie |
changeset
files
shortlog
graph
|
Fixed __class__ to always be at instance attribute position 0, thus matching its
class attribute position.
Added notes about the __class__ attribute, its definition in the object table,
and the copying of the attribute from instance templates upon instantiation. |
|
|
docs/concepts.txt micropython/data.py
|
|