Lines Matching refs:method

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->clazz->descriptor, vdata->method->name,
279 computeMapStats(pMap, vdata->method);
287 pCompMap = compressMapDifferential(pMap, vdata->method);
298 vdata->method->clazz->descriptor,
299 vdata->method->name);
306 vdata->method->clazz->descriptor,
307 vdata->method->name);
320 vdata->method->clazz->descriptor,
321 vdata->method->name);
328 vdata->method->clazz->descriptor,
329 vdata->method->name,
397 * Pass in method->registersSize if known, or -1 if not.
477 if (strcmp(vdata->method->clazz->descriptor, cd) == 0 &&
478 strcmp(vdata->method->name, mn) == 0)
481 desc = dexProtoCopyMethodDescriptor(&vdata->method->prototype);
482 ALOGI("Map for %s.%s %s", vdata->method->clazz->descriptor,
483 vdata->method->name, desc);
490 if ((vdata->method->registersSize + 7) / 8 != pMap->regWidth) {
492 vdata->method->registersSize, pMap->regWidth);
522 for (i = 0; i < vdata->method->registersSize; i++) {
547 dumpRegisterMap(pMap, vdata->method->registersSize);
600 * Output the map for a single method, if it has one.
666 * method counts in the DEX file.
994 * Get the expanded form of the register map associated with the method.
997 * immediately. Otherwise, we expand the map and replace method's register
1003 const RegisterMap* dvmGetExpandedRegisterMap0(Method* method)
1005 const RegisterMap* curMap = method->registerMap;
1027 method->clazz->descriptor, method->name);
1030 method->clazz->descriptor, method->name);
1045 format, method->clazz->descriptor, method->name);
1063 char* desc = dexProtoCopyMethodDescriptor(&method->prototype);
1065 method->clazz->descriptor, method->name, desc);
1070 * Update method, and free compressed map if it was sitting on the heap.
1072 dvmSetRegisterMap(method, newMap);
1136 in a method may not be GC points.
1160 method with 175 registers). We can deal with this in a couple of ways:
1163 on how many total registers the method has. The choice depends to some
1167 The last N registers hold method arguments. If the bytecode is expected
1241 Compact8 encoding method.
1248 static void computeMapStats(RegisterMap* pMap, const Method* method)
1286 prevAddr, addr, method->clazz->descriptor, method->name);
1291 method->clazz->descriptor, method->name);
1307 * least 16 registers in the method.
1310 float div = (float) kNumUpdatePosns / method->registersSize;
1329 if (method->registersSize < 16)
1332 if (bitNum >= method->registersSize) {
1335 bit, regByte, method->registersSize,
1342 bitNum, method->registersSize, div, idx);