OSDN Git Service

ART: Don't set initial RTI for BoundType if input untyped
authorDavid Brazdil <dbrazdil@google.com>
Mon, 28 Dec 2015 10:53:34 +0000 (10:53 +0000)
committerDavid Brazdil <dbrazdil@google.com>
Wed, 6 Jan 2016 12:44:46 +0000 (12:44 +0000)
commit744a1c687fb92050828e188838b0ce5e0474f94a
treeea04b85d15f74e8e8a88ab6de120ff2e330144c9
parent15693bfdf9fa3ec79327a77b7e10315614d716cc
ART: Don't set initial RTI for BoundType if input untyped

ReferenceTypePropagation will create a BoundType with upper bound
[Object, inexact, not null] for each if-not-null branch. The logic
setting its initial RTI will, however, set it straight to Object if
the input is untyped (loop phi or its derivate). This patch changes
the logic to leave the BoundType untyped and set it during fix-point
iteration.

Bug: 26330326
Change-Id: Ic492e2179a4c51f577908e60fbcf70d728b98a6f
compiler/optimizing/reference_type_propagation.cc
test/559-checker-rtp-ifnotnull/expected.txt [new file with mode: 0644]
test/559-checker-rtp-ifnotnull/info.txt [new file with mode: 0644]
test/559-checker-rtp-ifnotnull/src/Main.java [new file with mode: 0644]