commit | 689cef324977076ad825a25ba64502981540213b | [log] [tgz] |
---|---|---|
author | Christoffer Quist Adamsen <christofferqa@google.com> | Wed Nov 27 08:35:33 2019 +0100 |
committer | Christoffer Quist Adamsen <christofferqa@google.com> | Wed Nov 27 07:52:40 2019 +0000 |
tree | c71e61ca59d4cf7946463f0411e6c6d60ce9a33b | |
parent | e96740d1ac9f93e21fd1416fda48c9e69185a0e8 [diff] |
Allow inlining of invokes with nullable receivers in the class inliner Bug: 124842076 Change-Id: I8817e7d900fd76afa751b229a55b38a2e88ed7be
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java index 36112c9..0ba6b03 100644 --- a/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java +++ b/src/main/java/com/android/tools/r8/ir/optimize/classinliner/InlineCandidateProcessor.java
@@ -944,8 +944,8 @@ return false; } - // TODO(b/124842076) Extend this check to use checksNullReceiverBeforeAnySideEffect. - if (receiver.getTypeLattice().isNullable()) { + // A definitely null receiver will throw an error on call site. + if (receiver.getTypeLattice().nullability().isDefinitelyNull()) { return false; } }