• Home
  • Raw
  • Download

Lines Matching refs:method

63 static bool dvmPushInterpFrame(Thread* self, const Method* method)  in dvmPushInterpFrame()  argument
70 assert(!dvmIsNativeMethod(method)); in dvmPushInterpFrame()
71 assert(!dvmIsAbstractMethod(method)); in dvmPushInterpFrame()
73 stackReq = method->registersSize * 4 // params + locals in dvmPushInterpFrame()
75 + method->outsSize * 4; // args to other methods in dvmPushInterpFrame()
87 self->interpStackSize, method->clazz->descriptor, method->name); in dvmPushInterpFrame()
88 dvmHandleStackOverflow(self, method); in dvmPushInterpFrame()
99 stackPtr -= method->registersSize * 4 + sizeof(StackSaveArea); in dvmPushInterpFrame()
104 memset(stackPtr - (method->outsSize*4), 0xaf, stackReq); in dvmPushInterpFrame()
115 breakSaveBlock->method = NULL; in dvmPushInterpFrame()
119 saveBlock->method = method; in dvmPushInterpFrame()
139 bool dvmPushJNIFrame(Thread* self, const Method* method) in dvmPushJNIFrame() argument
146 assert(dvmIsNativeMethod(method)); in dvmPushJNIFrame()
148 stackReq = method->registersSize * 4 // params only in dvmPushJNIFrame()
161 self->interpStackSize, method->name); in dvmPushJNIFrame()
162 dvmHandleStackOverflow(self, method); in dvmPushJNIFrame()
174 stackPtr -= method->registersSize * 4 + sizeof(StackSaveArea); in dvmPushJNIFrame()
194 breakSaveBlock->method = NULL; in dvmPushJNIFrame()
198 saveBlock->method = method; in dvmPushJNIFrame()
215 bool dvmPushLocalFrame(Thread* self, const Method* method) in dvmPushLocalFrame() argument
221 assert(dvmIsNativeMethod(method)); in dvmPushLocalFrame()
233 self->interpStackSize, method->name); in dvmPushLocalFrame()
234 dvmHandleStackOverflow(self, method); in dvmPushLocalFrame()
258 saveBlock->method = method; in dvmPushLocalFrame()
280 if (saveBlock->method != SAVEAREA_FROM_FP(saveBlock->prevFrame)->method) { in dvmPopLocalFrame()
287 SAVEAREA_FROM_FP(saveBlock->prevFrame)->method)); in dvmPopLocalFrame()
292 saveBlock->method->name, in dvmPopLocalFrame()
293 SAVEAREA_FROM_FP(saveBlock->prevFrame)->method->name); in dvmPopLocalFrame()
323 while (saveBlock->prevFrame != NULL && saveBlock->method != NULL) { in dvmPopFrame()
326 if (dvmIsNativeMethod(saveBlock->method)) { in dvmPopFrame()
328 saveBlock->method->clazz->descriptor, in dvmPopFrame()
329 saveBlock->method->name, in dvmPopFrame()
330 (SAVEAREA_FROM_FP(saveBlock->prevFrame)->method == NULL) ? in dvmPopFrame()
337 if (saveBlock->method != NULL) { in dvmPopFrame()
355 static ClassObject* callPrep(Thread* self, const Method* method, Object* obj, in callPrep() argument
364 method->clazz->descriptor, method->name); in callPrep()
369 assert(method != NULL); in callPrep()
374 clazz = method->clazz; in callPrep()
377 char* desc = dexProtoCopyMethodDescriptor(&method->prototype); in callPrep()
379 clazz->descriptor, method->name, desc); in callPrep()
386 method)) in callPrep()
400 if (dvmIsNativeMethod(method)) { in callPrep()
402 if (!dvmPushJNIFrame(self, method)) { in callPrep()
408 if (!dvmPushInterpFrame(self, method)) { in callPrep()
424 void dvmCallMethod(Thread* self, const Method* method, Object* obj, in dvmCallMethod() argument
429 dvmCallMethodV(self, method, obj, false, pResult, args); in dvmCallMethod()
442 void dvmCallMethodV(Thread* self, const Method* method, Object* obj, in dvmCallMethodV() argument
445 const char* desc = &(method->shorty[1]); // [0] is the return type. in dvmCallMethodV()
450 clazz = callPrep(self, method, obj, false); in dvmCallMethodV()
456 (method->registersSize - method->insSize); in dvmCallMethodV()
461 if (!dvmIsStaticMethod(method)) { in dvmCallMethodV()
506 if (verifyCount != method->insSize) { in dvmCallMethodV()
508 method->insSize, clazz->descriptor, method->name); in dvmCallMethodV()
516 if (dvmIsNativeMethod(method)) { in dvmCallMethodV()
517 TRACE_METHOD_ENTER(self, method); in dvmCallMethodV()
522 (*method->nativeFunc)((u4*)self->interpSave.curFrame, pResult, in dvmCallMethodV()
523 method, self); in dvmCallMethodV()
524 TRACE_METHOD_EXIT(self, method); in dvmCallMethodV()
526 dvmInterpret(self, method, pResult); in dvmCallMethodV()
548 void dvmCallMethodA(Thread* self, const Method* method, Object* obj, in dvmCallMethodA() argument
551 const char* desc = &(method->shorty[1]); // [0] is the return type. in dvmCallMethodA()
556 clazz = callPrep(self, method, obj, false); in dvmCallMethodA()
562 (method->registersSize - method->insSize); in dvmCallMethodA()
565 if (!dvmIsStaticMethod(method)) { in dvmCallMethodA()
603 *(desc-1), clazz->descriptor, method->name); in dvmCallMethodA()
613 if (verifyCount != method->insSize) { in dvmCallMethodA()
615 method->insSize, clazz->descriptor, method->name); in dvmCallMethodA()
621 if (dvmIsNativeMethod(method)) { in dvmCallMethodA()
622 TRACE_METHOD_ENTER(self, method); in dvmCallMethodA()
627 (*method->nativeFunc)((u4*)self->interpSave.curFrame, pResult, in dvmCallMethodA()
628 method, self); in dvmCallMethodA()
629 TRACE_METHOD_EXIT(self, method); in dvmCallMethodA()
631 dvmInterpret(self, method, pResult); in dvmCallMethodA()
656 Object* dvmInvokeMethod(Object* obj, const Method* method, in dvmInvokeMethod() argument
680 clazz = callPrep(self, method, obj, !noAccessCheck); in dvmInvokeMethod()
687 (method->registersSize - method->insSize); in dvmInvokeMethod()
693 if (!dvmIsStaticMethod(method)) { in dvmInvokeMethod()
719 if (verifyCount != method->insSize) { in dvmInvokeMethod()
721 method->insSize, clazz->descriptor, method->name); in dvmInvokeMethod()
727 if (dvmIsNativeMethod(method)) { in dvmInvokeMethod()
728 TRACE_METHOD_ENTER(self, method); in dvmInvokeMethod()
733 (*method->nativeFunc)((u4*)self->interpSave.curFrame, &retval, in dvmInvokeMethod()
734 method, self); in dvmInvokeMethod()
735 TRACE_METHOD_EXIT(self, method); in dvmInvokeMethod()
737 dvmInterpret(self, method, &retval); in dvmInvokeMethod()
810 int dvmLineNumFromPC(const Method* method, u4 relPc) in dvmLineNumFromPC() argument
812 const DexCode* pDexCode = dvmGetMethodCode(method); in dvmLineNumFromPC()
815 if (dvmIsNativeMethod(method) && !dvmIsAbstractMethod(method)) in dvmLineNumFromPC()
826 dexDecodeDebugInfo(method->clazz->pDvmDex->pDexFile, pDexCode, in dvmLineNumFromPC()
827 method->clazz->descriptor, in dvmLineNumFromPC()
828 method->prototype.protoIdx, in dvmLineNumFromPC()
829 method->accessFlags, in dvmLineNumFromPC()
893 if (dvmIsReflectionMethod(saveArea->method)) { in dvmGetCallerFP()
916 return SAVEAREA_FROM_FP(caller)->method->clazz; in dvmGetCallerClass()
940 return SAVEAREA_FROM_FP(callerCaller)->method->clazz; in dvmGetCaller2Class()
966 return SAVEAREA_FROM_FP(caller)->method->clazz; in dvmGetCaller3Class()
984 array[i++] = SAVEAREA_FROM_FP(fp)->method; in dvmFillStackTraceArray()
1001 void dvmHandleStackOverflow(Thread* self, const Method* method) in dvmHandleStackOverflow() argument
1019 method->clazz->descriptor, method->name, method->shorty); in dvmHandleStackOverflow()
1022 method->registersSize * 4, sizeof(StackSaveArea), method->outsSize * 4, in dvmHandleStackOverflow()
1023 (method->registersSize + method->outsSize) * 4 + sizeof(StackSaveArea), in dvmHandleStackOverflow()
1098 const Method* method = saveArea->method; in extractMonitorEnterObject() local
1102 if (!dvmLinearAllocContains(method, sizeof(Method))) { in extractMonitorEnterObject()
1103 ALOGD("ExtrMon: method %p not valid", method); in extractMonitorEnterObject()
1108 u4 insnsSize = dvmGetMethodInsnsSize(method); in extractMonitorEnterObject()
1109 if (currentPc < method->insns || in extractMonitorEnterObject()
1110 currentPc >= method->insns + insnsSize) in extractMonitorEnterObject()
1113 currentPc, method->insns, method->insns + insnsSize); in extractMonitorEnterObject()
1126 if (reg >= method->registersSize) { in extractMonitorEnterObject()
1128 reg, method->registersSize); in extractMonitorEnterObject()
1191 const Method* method; in dumpFrames() local
1216 method = saveArea->method; in dumpFrames()
1224 relPc = currentPc - saveArea->method->insns; in dumpFrames()
1228 std::string methodName(dvmHumanReadableMethod(method, false)); in dumpFrames()
1229 if (dvmIsNativeMethod(method)) { in dumpFrames()
1234 methodName.c_str(), dvmGetMethodSourceFile(method), in dumpFrames()
1236 relPc < 0 ? -1 : dvmLineNumFromPC(method, relPc)); in dumpFrames()