summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andreas Gampe <agampe@google.com> 2015-08-11 01:24:31 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2015-08-11 01:24:31 +0000
commita1e8868fda513e658052231d204d7dc8d5886fec (patch)
tree4e2b6e230d35a46d89f78da356ecd93c7af6649c
parentab3764e251eef3e515e353a9a20381c5c8dd2694 (diff)
parent168387df8dcbae1b51f124eed84daf8e8de6a974 (diff)
am 168387df: ART: Change UnresolvedMergedType merge
* commit '168387df8dcbae1b51f124eed84daf8e8de6a974': ART: Change UnresolvedMergedType merge
-rw-r--r--runtime/verifier/reg_type_cache.cc4
-rw-r--r--test/800-smali/smali/b_22881413.smali4
2 files changed, 6 insertions, 2 deletions
diff --git a/runtime/verifier/reg_type_cache.cc b/runtime/verifier/reg_type_cache.cc
index a597c8fdf9..0f36572b3c 100644
--- a/runtime/verifier/reg_type_cache.cc
+++ b/runtime/verifier/reg_type_cache.cc
@@ -325,7 +325,7 @@ const RegType& RegTypeCache::FromUnresolvedMerge(const RegType& left, const RegT
const UnresolvedMergedType* left_merge = down_cast<const UnresolvedMergedType*>(&left);
types.Copy(&left_merge->GetUnresolvedTypes());
left_resolved = &left_merge->GetResolvedPart();
- } else if (left.IsUnresolvedReference()) {
+ } else if (left.IsUnresolvedTypes()) {
types.SetBit(left.GetId());
left_resolved = &Zero();
} else {
@@ -337,7 +337,7 @@ const RegType& RegTypeCache::FromUnresolvedMerge(const RegType& left, const RegT
const UnresolvedMergedType* right_merge = down_cast<const UnresolvedMergedType*>(&right);
types.Union(&right_merge->GetUnresolvedTypes());
right_resolved = &right_merge->GetResolvedPart();
- } else if (right.IsUnresolvedReference()) {
+ } else if (right.IsUnresolvedTypes()) {
types.SetBit(right.GetId());
right_resolved = &Zero();
} else {
diff --git a/test/800-smali/smali/b_22881413.smali b/test/800-smali/smali/b_22881413.smali
index f624734353..29dd82a358 100644
--- a/test/800-smali/smali/b_22881413.smali
+++ b/test/800-smali/smali/b_22881413.smali
@@ -47,6 +47,10 @@
# v8 = int, v9 = boolean, v10 = boolean
sget-object v0, LB22881413;->unresBase0:La/b/c/dBase0;
+
+# Test an UnresolvedUninitializedReference type.
+ new-instance v0, La/b/c/dBaseInit;
+
const v1, 0
const v2, 0