commit | aa0c00c97bc1fe5c8def7c6cdebfd119e86d07e5 | [log] [tgz] |
---|---|---|
author | Sebastien Hertz <shertz@google.com> | Fri Mar 14 17:58:54 2014 +0100 |
committer | Sebastien Hertz <shertz@google.com> | Fri Mar 14 18:09:49 2014 +0100 |
tree | 2557e1aeb5a1830c72733797f86ea9bf72418228 | |
parent | 37d4c1db4d705f5a28001f65afdd68d0527948d8 [diff] [blame] |
Fix reg type merging in the verifier Fixes bad merging of float, long and double reg types with constant types. Adds merging tests in reg_type_test. Bug: https://code.google.com/p/android/issues/detail?id=66434 Bug: 13464407 Change-Id: I56761f5f5562b742d0ef9cc66b58d55f7b668949
diff --git a/runtime/verifier/reg_type.cc b/runtime/verifier/reg_type.cc index 63f0ff4..c6f3e5c 100644 --- a/runtime/verifier/reg_type.cc +++ b/runtime/verifier/reg_type.cc
@@ -777,7 +777,7 @@ } static const RegType& SelectNonConstant(const RegType& a, const RegType& b) { - return a.IsConstant() ? b : a; + return a.IsConstantTypes() ? b : a; } const RegType& RegType::Merge(const RegType& incoming_type, RegTypeCache* reg_types) const {