/dalvik/vm/ |
H A D | Debugger.h | 71 const Method* method; member in struct:StepControl 91 Method* method; member in struct:DebugInvokeReq 102 /* condition variable to wait on while the method executes */ 263 void dvmDbgPostLocationEvent(const Method* method, int pcOffset, 291 const AddressSet *dvmAddressSetForLine(const Method* method, int line);
|
H A D | DvmDex.h | 57 /* interface method lookup cache */ 149 struct Method* method) 152 pDvmDex->pResMethods[methodIdx] = method; 148 dvmDexSetResolvedMethod(DvmDex* pDvmDex, u4 methodIdx, struct Method* method) argument
|
H A D | Exception.cpp | 29 counter for the method now being executed, but that's only held in a local 85 executing a static method or accessing a static field. Attemping to access 198 * Find and return an exception constructor method that can take the 483 * method that doesn't declare it. 558 * For consistency we just invoke the Throwable printStackTrace method, 596 * Search the method's list of exceptions for a match. 600 static int findCatchInMethod(Thread* self, const Method* method, int relPc, argument 608 assert(!dvmIsNativeMethod(method)); 611 method->clazz->descriptor, method 850 const Method* method = saveArea->method; local 908 const Method* method = saveArea->method; local 1433 dvmThrowUnsatisfiedLinkError(const char* msg, const Method* method) argument [all...] |
H A D | Exception.h | 466 void dvmThrowUnsatisfiedLinkError(const char* msg, const Method* method);
|
H A D | InitRefs.cpp | 299 Method* method = dvmFindDirectMethodByDescriptor(clazz, name, descriptor); local 301 if (method == NULL) { 302 ALOGE("Could not find essential direct method %s.%s with descriptor %s", 307 *pMethod = method; 316 ALOGE("Could not find essential class %s for direct method lookup", className); 324 static struct { Method** method; const char* name; const char* descriptor; } constructors[] = { member in struct:__anon25 343 for (i = 0; constructors[i].method != NULL; i++) { 344 if (!initDirectMethodReference(constructors[i].method, constructors[i].name, 355 Method** method; member in struct:__anon26 384 for (i = 0; methods[i].method ! 403 Method* method = dvmFindVirtualMethodByDescriptor(clazz, name, descriptor); local [all...] |
H A D | InlineNative.cpp | 36 * These are NOT simply native implementations. A full method definition 42 * The difference between this and an "internal native" static method 44 * "secretly replaces" the other method, so you can't avoid having two 53 * method is invoked. This property is NOT preserved here. If you need 56 * resolve the method if it hasn't been). 58 * DO NOT replace "synchronized" methods. We do not support method 62 * garbage collection. The method arguments are not visible to the GC 85 * It's best to avoid inlining the overridden version of a method. For 92 * Because the actual method is not called, debugger breakpoints on these 94 * method an 828 Method* method = dvmFindDirectMethodByDescriptor(clazz, methodName, local 870 Method* method = gDvm.inlinedMethods[opIndex]; local 903 Method* method = dvmResolveInlineNative(opIndex); local [all...] |
H A D | Jni.cpp | 54 when the native method returns into the VM, or global, which are held 68 The most common mode of operation is for a method to create zero or 688 Method* method = &methods[i]; local 689 if (strcmp(name, method->name) == 0) { 690 char* desc = dexProtoCopyMethodDescriptor(&method->prototype); 691 ALOGE("Candidate: %s.%s:%s", method->clazz->descriptor, name, desc); 698 ALOGE("ERROR: couldn't find native method"); 705 * Register a method that uses JNI calling conventions. 720 ALOGV("fast JNI method %s.%s:%s detected", clazz->descriptor, methodName, signature); 723 Method* method local 779 shouldTrace(Method* method) argument 802 dvmUseJNIBridge(Method* method, void* func) argument 879 logNativeMethodEntry(const Method* method, const u4* args) argument 908 logNativeMethodExit(const Method* method, Thread* self, const JValue returnValue) argument 1079 convertReferenceResult(JNIEnv* env, JValue* pResult, const Method* method, Thread* self) argument 1090 dvmCallJNIMethod(const u4* args, JValue* pResult, const Method* method, Thread* self) argument 1283 Object* method = dvmDecodeIndirectRef(ts.self(), jmethod); local [all...] |
H A D | JniInternal.h | 86 * Pop the JNI local stack when we return from a native method. "saveArea" 87 * points to the StackSaveArea for the method we're leaving. 107 const Method* method, Thread* self); 109 const Method* method, Thread* self); 112 * Configure "method" to use the JNI bridge to call "func". 114 void dvmUseJNIBridge(Method* method, void* func); 136 * Get the last method called on the interp stack. This is the method
|
H A D | Misc.cpp | 297 std::string dvmHumanReadableMethod(const Method* method, bool withSignature) argument 299 if (method == NULL) { 302 std::string result(dvmHumanReadableDescriptor(method->clazz->descriptor)); 304 result += method->name; 307 char* signature = dexProtoCopyMethodDescriptor(&method->prototype);
|
H A D | Misc.h | 169 std::string dvmHumanReadableMethod(const Method* method, bool withSignature);
|
H A D | Native.cpp | 18 * Native method resolution. 30 static void* lookupSharedLibMethod(const Method* method); 56 * Resolve a native method and invoke it. 59 * resolution succeeds, method->insns is replaced, and we don't go through 60 * here again unless the method is unregistered. 62 * Initializes method's class if necessary. 71 const Method* method, Thread* self) 73 ClassObject* clazz = method->clazz; 76 * If this is a static method, it could be called before the class 79 if (dvmIsStaticMethod(method)) { 70 dvmResolveNativeMethod(const u4* args, JValue* pResult, const Method* method, Thread* self) argument 754 lookupSharedLibMethod(const Method* method) argument [all...] |
H A D | Native.h | 70 * Resolve a native method. This uses the same prototype as a 74 * Causes the method's class to be initialized. 79 const Method* method, struct Thread* self);
|
H A D | Profile.cpp | 18 * Android's method call profiling goodies. 56 * u4 method ID | method action 61 * u4 method ID | method action 66 * u4 method ID | method action 179 * Initialize "dmtrace" method profiling. 197 * we can put interpreted method information. This allows interpreted 352 * Start method tracin 484 Method* method; local 733 dvmMethodTraceAdd(Thread* self, const Method* method, int action) argument 809 dvmFastMethodTraceEnter(const Method* method, Thread* self) argument 834 dvmFastNativeMethodTraceExit(const Method* method, Thread* self) argument 845 dvmEmitEmulatorTrace(const Method* method, int action) argument [all...] |
H A D | Profile.h | 18 * Android's method call profiling goodies. 83 * Start/stop method tracing. 111 * Call these when a method enters or exits. 135 void dvmMethodTraceAdd(struct Thread* self, const Method* method, int action); 136 void dvmEmitEmulatorTrace(const Method* method, int action); 143 extern "C" void dvmFastMethodTraceEnter(const Method* method, struct Thread* self); 145 extern "C" void dvmFastNativeMethodTraceExit(const Method* method, struct Thread* self); 160 METHOD_TRACE_ENTER = 0x00, // method entry 161 METHOD_TRACE_EXIT = 0x01, // method exit 162 METHOD_TRACE_UNROLL = 0x02, // method exite [all...] |
H A D | Sync.cpp | 285 meth = saveArea->method; 319 relativePc = saveArea->xtra.currentPc - saveArea->method->insns; 409 mon->ownerMethod = saveArea->method; 410 mon->ownerPc = (saveArea->xtra.currentPc - saveArea->method->insns); 879 * determine the acquire method, ordered by cost.
|
H A D | Thread.cpp | 1138 * want to stuff the application class loader into the method's class 1148 * Instead, we save a pointer to the method and explicitly check for 1149 * it in FindClass. The method is private so nobody else can call it. 1528 * Execute the "run" method. 1594 * Find the "uncaughtException" method in this object. The method 1608 ALOGW("WARNING: no 'uncaughtException' method in class %s", 2008 * starter" native method at the top. 2018 if (dvmIsNativeMethod(ssa->method)) 2102 * If we're doing method trac [all...] |
/dalvik/vm/alloc/ |
H A D | Alloc.cpp | 77 Method *method = dvmFindDirectMethodByDescriptor(klass, "start", "()V"); local 78 if (method == NULL) { 84 dvmCallMethod(self, method, NULL, &unusedResult);
|
H A D | Copying.cpp | 977 * been enqueued. The Reference.enqueue() method 1523 const Method *method; 1526 method = saveArea->method; 1527 if (method != NULL && !dvmIsNativeMethod(method)) { 1530 if (dvmPointerSetAddEntry(gDvm.preciseMethods, method)) 1532 method->clazz->descriptor, method->name, method); [all...] |
H A D | Visit.cpp | 80 * Visits all stack slots except those belonging to native method 92 Method *method; local 94 method = (Method *)saveArea->method; 95 if (method != NULL && !dvmIsNativeMethod(method)) { 96 const RegisterMap* pMap = dvmGetExpandedRegisterMap(method); 100 int addr = saveArea->xtra.currentPc - method->insns; 109 for (size_t i = 0; i < method->registersSize; ++i) { 124 for (size_t i = 0; i < method [all...] |
/dalvik/vm/analysis/ |
H A D | CodeVerify.cpp | 76 * Array of RegisterLine structs, one per address in the method. We only 84 * to the method's declared "registersSize" plus kExtraRegs. 593 * Is this method a constructor? 601 * Is this method a class initializer? 624 * that because the method is private. So the compiler 625 * generates a package-scope <init>(parent,bogus) method that 627 * to distinguish the signature of the synthetic method). 770 * Set the register types for the first instruction in the method based on 771 * the method signature. 831 * verified) is if the current method i [all...] |
H A D | CodeVerify.h | 56 * For example, if a method takes a byte argument, we don't want to allow 127 * instruction. We track the status of all registers, and (if the method 133 * track the liveness of the method result register (which is not visible 146 * address of the new-instance instruction. One per method. 151 int addr; /* code offset, or -1 for method arg ("this") */ 163 * The method we're working on. 165 const Method* method; member in struct:VerifierData 168 * Number of code units of instructions in the method. A cache of the 175 * to the method's declared "registersSize". (Does not include the
|
H A D | DexVerify.cpp | 85 const Method* meth = vdata->method; 212 * Perform verification on a single method. 219 * (3) Iterate through the method, checking type safety and looking 248 vdata.method = meth; 264 "VFY: zero-length code in concrete non-native method"); 323 * We could probably skip this for a method with no registers, but 486 * Perform static checks on a method invocation instruction. All we do 487 * here is ensure that the method index is in the valid range. 492 LOG_VFY("VFY: bad method index %d (max %d)", 513 * Ensure that the register index is valid for this method [all...] |
H A D | Liveness.cpp | 68 bool verbose = false; //= dvmWantVerboseVerification(vdata->method); 70 const Method* meth = vdata->method; 83 * for method result "registers", which aren't visible to the GC. 103 LOG_VFY_METH(vdata->method, "oh dear"); 115 * un-visited blocks from the tail end of the method). 252 LOG_VFY_METH(vdata->method, 257 LOG_VFY_METH(vdata->method, 322 const Method* meth = vdata->method; 741 bool verbose = dvmWantVerboseVerification(vdata->method); 786 const Method* meth = vdata->method; [all...] |
H A D | Optimize.cpp | 30 * Virtual/direct calls to "method" are replaced with an execute-inline 34 Method* method; member in struct:InlineSub 40 static void optimizeMethod(Method* method, bool essentialOnly); 41 static void rewriteInstField(Method* method, u2* insns, Opcode quickOpc, 43 static void rewriteStaticField(Method* method, u2* insns, Opcode volatileOpc); 44 static void rewriteVirtualInvoke(Method* method, u2* insns, Opcode newOpc); 45 static bool rewriteInvokeObjectInit(Method* method, u2* insns); 46 static bool rewriteExecuteInline(Method* method, u2* insns, 48 static bool rewriteExecuteInlineRange(Method* method, u2* insns, 50 static void rewriteReturnVoid(Method* method, u 76 Method* method = dvmFindInlinableMethod(ops[i].classDescriptor, local 146 optimizeMethod(Method* method, bool essentialOnly) argument 677 rewriteInstField(Method* method, u2* insns, Opcode quickOpc, Opcode volatileOpc) argument 717 rewriteStaticField0(Method* method, u2* insns, Opcode volatileOpc, u4 fieldIdx) argument 741 rewriteStaticField(Method* method, u2* insns, Opcode volatileOpc) argument 888 rewriteVirtualInvoke(Method* method, u2* insns, Opcode newOpc) argument 933 rewriteInvokeObjectInit(Method* method, u2* insns) argument 1050 rewriteExecuteInline(Method* method, u2* insns, MethodType methodType) argument 1101 rewriteExecuteInlineRange(Method* method, u2* insns, MethodType methodType) argument 1144 needsReturnBarrier(Method* method) argument 1183 rewriteReturnVoid(Method* method, u2* insns) argument [all...] |
H A D | RegisterMap.cpp | 47 static void computeMapStats(RegisterMap* pMap, const Method* method); 180 * Generate the register map for a method that has just been verified 199 if (vdata->method->registersSize >= 2048) { 201 vdata->method->registersSize); 204 regWidth = (vdata->method->registersSize + 7) / 8; 209 * the method has a section at the end without GC points (e.g. array 211 * detecting it requires scanning the entire method, so we don't bother. 225 * since we don't count method entry as a GC point. 234 ALOGE("ERROR: register map can't handle %d gc points in one method", 245 vdata->method 1003 dvmGetExpandedRegisterMap0(Method* method) argument 1248 computeMapStats(RegisterMap* pMap, const Method* method) argument [all...] |