OSDN Git Service

ART: Do not eagerly type LoopPhi [null, ...]
authorDavid Brazdil <dbrazdil@google.com>
Mon, 30 Nov 2015 10:38:12 +0000 (10:38 +0000)
committerDavid Brazdil <dbrazdil@google.com>
Tue, 1 Dec 2015 15:11:37 +0000 (15:11 +0000)
commit3a738bfe9784b9ea0f2fccbe75f0c72ede536641
tree2a571fcd46f0e0d7c2dfa0d1a93b6c009bfd48b9
parentd1744d449cf2b56af7e0896b3729fac2a414e3af
ART: Do not eagerly type LoopPhi [null, ...]

ReferenceTypePropagation would eagerly set the type of each loop phi
to the type of the first input prior to beginning the fix-point
iteration. While this does make the algorithm converge faster, it
should not be applied when the first input is a NullConstant becuase
that sets the type of the phi and all dependent instructions to Object.

Bug: 25899441
Change-Id: Iff1ed26a63fe4332eaf88d9ca171e287f10ba1a6
compiler/optimizing/reference_type_propagation.cc
compiler/optimizing/reference_type_propagation.h
test/450-checker-types/src/Main.java