commit | 7ba844fa7c6f67fcd9a990d375df8deb05ab9137 | [log] [tgz] |
---|---|---|
author | Christoffer Quist Adamsen <christofferqa@google.com> | Tue Nov 12 09:50:11 2019 +0100 |
committer | Christoffer Quist Adamsen <christofferqa@google.com> | Tue Nov 12 09:38:08 2019 +0000 |
tree | 73bc7dba17a7b86df778e77b93dc7e6528c35dd5 | |
parent | 39c1162e7677db90d3b0508426d8d0f91e67391e [diff] |
Fix imprecise phi type in class inliner Bug: 144237393 Change-Id: I58fa9c1d27d062c9b133dc57ca28d359274a340c
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/FieldValueHelper.java b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/FieldValueHelper.java index d06b3f9..832e8b9 100644 --- a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/FieldValueHelper.java +++ b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/FieldValueHelper.java
@@ -111,6 +111,11 @@ // we just created for future use we should delay removing trivial // phis until we are done with replacing fields reads. phi.addOperands(operands, false); + + TypeLatticeElement phiType = phi.computePhiType(appView); + assert phiType.lessThanOrEqual(phi.getTypeLattice(), appView); + phi.setTypeLattice(phiType); + value = phi; }