Files
sdk/pkg/compiler
Asger Feldthaus 22bf979646 dart2js cps: Retain refinement nodes and update refinements after GVN.
Refinement nodes are retained throughout the optimization pipeline.

GVN can improve refinements, so a new pass after GVN updated references
to use the best refinement in scope.  For example:

    x.f.g();
    x.f.h();

  ==>

    v0 = x.f;
    v0.g();
    v0.h();

The receiver of h() is known to be non-null after GVN because the two
uses of x.f were proven to be the same value.

BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1519513002 .
2015-12-14 15:01:32 +01:00
..
2015-11-02 14:43:22 +01:00
2015-10-05 10:20:36 -07:00