1.1 --- a/TO_DO.txt Wed Aug 24 01:05:46 2011 +0200
1.2 +++ b/TO_DO.txt Fri Aug 26 00:03:08 2011 +0200
1.3 @@ -95,12 +95,20 @@
1.4 therefore no need to build a new frame for this call, although in some cases the locals
1.5 frame might need expanding.
1.6
1.7 +Reference tracking where objects associated with names are assigned to attributes of other
1.8 +objects may assist in allocation optimisations. Recording whether an object referenced by
1.9 +a name is assigned to an attribute, propagated to another name and assigned to an
1.10 +attribute, or passed to another function or method might, if such observations were
1.11 +combined, allow frame-based or temporary allocation to occur.
1.12 +
1.13 Inlining
1.14 ========
1.15
1.16 Where a function or method call can always be determined, the body of the target could be
1.17 inlined - copied into place - within the caller. If the target is only ever called by a
1.18 -single caller it could be moved into place.
1.19 +single caller it could be moved into place. This could enhance deductions based on
1.20 +attribute usage since observations from the inlined function would be merged into the
1.21 +caller.
1.22
1.23 Function Specialisation
1.24 =======================