Set the minimum oat version for the fixed post-default-method vtable to 87

This commit is contained in:
Ben Gruver 2016-10-01 14:16:17 -07:00
parent 67171366db
commit af8a063472

View File

@ -866,7 +866,7 @@ public class ClassProto implements TypeProto {
@Nonnull public List<Method> getVtable() {
if (!classPath.isArt() || classPath.oatVersion < 72) {
return preDefaultMethodVtableSupplier.get();
} else if (classPath.oatVersion < 79) {
} else if (classPath.oatVersion < 87) {
return buggyPostDefaultMethodVtableSupplier.get();
} else {
return postDefaultMethodVtableSupplier.get();
@ -964,14 +964,10 @@ public class ClassProto implements TypeProto {
final HashMap<MethodReference, Integer> methodOrder = Maps.newHashMap();
for (int i=interfaces.size()-1; i>=0; i--) {
String interfaceType = interfaces.get(i);
ClassDef interfaceDef = classPath.getClassDef(interfaceType);
for (Method interfaceMethod : interfaceDef.getVirtualMethods()) {
int vtableIndex = findMethodIndexInVtableReverse(vtable, interfaceMethod);