Effects analysis distinguishes between struct fields
authorAndy Wingo <wingo@pobox.com>
Sun, 10 Nov 2013 11:05:35 +0000 (12:05 +0100)
committerAndy Wingo <wingo@pobox.com>
Sun, 10 Nov 2013 11:05:35 +0000 (12:05 +0100)
commit863dd873628a971176556a1da1bf2ab3f0ff5e55
tree051299ea14e49875f80e265a0c8eef8153652144
parenta2972c195dc6643dd6e1d518dc3a3014ed51d981
Effects analysis distinguishes between struct fields

* module/language/tree-il/effects.scm (compile-time-cond):
  (define-effects): Make the effects analysis more precise,
  distinguishing between different kinds of mutable data.  On 64-bit
  systems we take advantage of the additional bits to be even more
  precise.
  (make-effects-analyzer): Inline handlers for all "accessor" primitives
  and their corresponding mutators.

* module/language/tree-il/peval.scm (peval): Reflow to remove use of the
  "accessor-primitive?" predicate.

* module/language/tree-il/primitives.scm (accessor-primitive?): Remove.
module/language/tree-il/effects.scm
module/language/tree-il/peval.scm
module/language/tree-il/primitives.scm