Hi, In kaffe VM http://www.lamedoc.com/kaffe/classMethod_8h_source.html i find this code :
typedef struct _jmethodID { Utf8Const* name; parsed_signature_t* parsed_sig; accessFlags accflags; long idx; /* Index into class->vtable */ u2 stacksz; u2 localsz; ....} and in dalvik vm i find this one : struct Method { /* the class we are a part of */ ClassObject* clazz; /* access flags; low 16 bits are defined by spec (could be u2?) */ u4 accessFlags; /* * For concrete virtual methods, this is the offset of the method * in "vtable". * * For abstract methods in an interface class, this is the offset * of the method in "iftable[n]->methodIndexArray". */ u2 methodIndex; /* * Method bounds; not needed for an abstract method. * * For a native method, we compute the size of the argument list, and * set "insSize" and "registerSize" equal to it. */ u2 registersSize; /* ins + locals */ u2 outsSize; u2 insSize; /* method name, e.g. "<init>" or "eatLunch" */ const char* name; /* * Method prototype descriptor string (return and argument types). * * TODO: This currently must specify the DexFile as well as the proto_ids * index, because generated Proxy classes don't have a DexFile. We can * remove the DexFile* and reduce the size of this struct if we generate * a DEX for proxies. */ DexProto prototype; /* short-form method descriptor string */ const char* shorty; /* * The remaining items are not used for abstract or native methods. * (JNI is currently hijacking "insns" as a function pointer, set * after the first call. For internal-native this stays null.) */ /* the actual code */ const u2* insns; /* instructions, in memory- mapped .dex */ /* cached JNI argument and return-type hints */ int jniArgInfo; /* * Native method ptr; could be actual function or a JNI bridge. We * don't currently discriminate between DalvikBridgeFunc and * DalvikNativeFunc; the former takes an argument superset (i.e. two * extra args) which will be ignored. If necessary we can use * insns==NULL to detect JNI bridge vs. internal native. */ DalvikBridgeFunc nativeFunc; /* * Register map data, if available. This will point into the DEX file * if the data was computed during pre-verification, or into the * linear alloc area if not. */ const RegisterMap* registerMap; /* set if method was called during method profiling */ bool inProfile;}; And I want to know what's the equivalent of "stacksz" in dalvik vm? thank you. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en