OSDN Git Service

ART: Allow arraycopy with int[] in unstarted runtime
authorAndreas Gampe <agampe@google.com>
Sat, 7 Mar 2015 01:11:47 +0000 (17:11 -0800)
committerAndreas Gampe <agampe@google.com>
Sat, 7 Mar 2015 01:11:47 +0000 (17:11 -0800)
Overlooked in the condition, the actual code was already there.

Bug: 19542228
Change-Id: I30caf77b345cb9bdb1f54c28bf4d42852c9a3298

runtime/interpreter/interpreter_common.cc

index 604e133..82d412c 100644 (file)
@@ -986,7 +986,8 @@ static void UnstartedRuntimeInvoke(Thread* self,  const DexFile::CodeItem* code_
     mirror::ArtMethod* method = shadow_frame->GetVRegReference(arg_offset)->AsArtMethod();
     result->SetL(method->GetNameAsString(self));
   } else if (name == "void java.lang.System.arraycopy(java.lang.Object, int, java.lang.Object, int, int)" ||
-             name == "void java.lang.System.arraycopy(char[], int, char[], int, int)") {
+             name == "void java.lang.System.arraycopy(char[], int, char[], int, int)" ||
+             name == "void java.lang.System.arraycopy(int[], int, int[], int, int)") {
     // Special case array copying without initializing System.
     Class* ctype = shadow_frame->GetVRegReference(arg_offset)->GetClass()->GetComponentType();
     jint srcPos = shadow_frame->GetVReg(arg_offset + 1);