summaryrefslogtreecommitdiff
path: root/compiler/optimizing/escape.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/escape.cc')
-rw-r--r--compiler/optimizing/escape.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/optimizing/escape.cc b/compiler/optimizing/escape.cc
index cebe94fd0d..6fffe22277 100644
--- a/compiler/optimizing/escape.cc
+++ b/compiler/optimizing/escape.cc
@@ -24,7 +24,8 @@ void VisitEscapes(HInstruction* reference, EscapeVisitor& escape_visitor) {
// References not allocated in the method are intrinsically escaped.
// Finalizable references are always escaping since they end up in FinalizerQueues.
if ((!reference->IsNewInstance() && !reference->IsNewArray()) ||
- (reference->IsNewInstance() && reference->AsNewInstance()->IsFinalizable())) {
+ // TODO: Remove "OrNull".
+ (reference->IsNewInstance() && reference->AsNewInstanceOrNull()->IsFinalizable())) {
if (!escape_visitor(reference)) {
return;
}
@@ -105,7 +106,8 @@ void CalculateEscape(HInstruction* reference,
*is_singleton_and_not_returned = true;
*is_singleton_and_not_deopt_visible = true;
- if (reference->IsNewInstance() && reference->AsNewInstance()->IsFinalizable()) {
+ // TODO: Remove "OrNull".
+ if (reference->IsNewInstance() && reference->AsNewInstanceOrNull()->IsFinalizable()) {
// Finalizable reference is treated as being returned in the end.
*is_singleton_and_not_returned = false;
}