diff options
| author | 2015-06-17 10:50:00 +0000 | |
|---|---|---|
| committer | 2015-06-17 10:50:00 +0000 | |
| commit | edb83c606e034d76bed1331f34cdc435df47bb95 (patch) | |
| tree | 53de01908990954cdf0f46168cb437d5c12ebf2e /compiler/optimizing/instruction_simplifier.cc | |
| parent | 4b9a93e7774d6650f6f3b637d018109d6fe97546 (diff) | |
| parent | 7cb499b1af1575c854860b0d6a103c4a2a59a569 (diff) | |
Merge "Fix bug in optimizing around instanceof."
Diffstat (limited to 'compiler/optimizing/instruction_simplifier.cc')
| -rw-r--r-- | compiler/optimizing/instruction_simplifier.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/optimizing/instruction_simplifier.cc b/compiler/optimizing/instruction_simplifier.cc index 98a5841f80..2daeeb3c0c 100644 --- a/compiler/optimizing/instruction_simplifier.cc +++ b/compiler/optimizing/instruction_simplifier.cc @@ -206,7 +206,9 @@ static bool TypeCheckHasKnownOutcome(HLoadClass* klass, HInstruction* object, bo // The test failed at compile time so will also fail at runtime. *outcome = false; return true; - } else if (!class_rti.IsInterface() && !obj_rti.IsSupertypeOf(class_rti)) { + } else if (!class_rti.IsInterface() + && !obj_rti.IsInterface() + && !obj_rti.IsSupertypeOf(class_rti)) { // Different type hierarchy. The test will fail. *outcome = false; return true; |