Mercurial > hg > truffle
comparison src/share/vm/ci/ciMethod.cpp @ 14521:29ccc4cbabca
Merge
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Wed, 12 Mar 2014 13:30:08 +0100 |
parents | d8041d695d19 |
children | b51e29501f30 4ca6dc0799b6 |
comparison
equal
deleted
inserted
replaced
14520:f84115370178 | 14521:29ccc4cbabca |
---|---|
410 // Which local variables are live at a specific bci? When debugging | 410 // Which local variables are live at a specific bci? When debugging |
411 // will return true for all locals in some cases to improve debug | 411 // will return true for all locals in some cases to improve debug |
412 // information. | 412 // information. |
413 MethodLivenessResult ciMethod::liveness_at_bci(int bci) { | 413 MethodLivenessResult ciMethod::liveness_at_bci(int bci) { |
414 MethodLivenessResult result = raw_liveness_at_bci(bci); | 414 MethodLivenessResult result = raw_liveness_at_bci(bci); |
415 if (CURRENT_ENV->jvmti_can_access_local_variables() || DeoptimizeALot || CompileTheWorld) { | 415 if (CURRENT_ENV->should_retain_local_variables() || DeoptimizeALot || CompileTheWorld) { |
416 // Keep all locals live for the user's edification and amusement. | 416 // Keep all locals live for the user's edification and amusement. |
417 result.at_put_range(0, result.size(), true); | 417 result.at_put_range(0, result.size(), true); |
418 } | 418 } |
419 return result; | 419 return result; |
420 } | 420 } |
1355 return _method_blocks; | 1355 return _method_blocks; |
1356 } | 1356 } |
1357 | 1357 |
1358 #undef FETCH_FLAG_FROM_VM | 1358 #undef FETCH_FLAG_FROM_VM |
1359 | 1359 |
1360 void ciMethod::dump_name_as_ascii(outputStream* st) { | |
1361 Method* method = get_Method(); | |
1362 st->print("%s %s %s", | |
1363 method->klass_name()->as_quoted_ascii(), | |
1364 method->name()->as_quoted_ascii(), | |
1365 method->signature()->as_quoted_ascii()); | |
1366 } | |
1367 | |
1360 void ciMethod::dump_replay_data(outputStream* st) { | 1368 void ciMethod::dump_replay_data(outputStream* st) { |
1361 ResourceMark rm; | 1369 ResourceMark rm; |
1362 Method* method = get_Method(); | 1370 Method* method = get_Method(); |
1363 MethodCounters* mcs = method->method_counters(); | 1371 MethodCounters* mcs = method->method_counters(); |
1364 Klass* holder = method->method_holder(); | 1372 st->print("ciMethod "); |
1365 st->print_cr("ciMethod %s %s %s %d %d %d %d %d", | 1373 dump_name_as_ascii(st); |
1366 holder->name()->as_quoted_ascii(), | 1374 st->print_cr(" %d %d %d %d %d", |
1367 method->name()->as_quoted_ascii(), | |
1368 method->signature()->as_quoted_ascii(), | |
1369 mcs == NULL ? 0 : mcs->invocation_counter()->raw_counter(), | 1375 mcs == NULL ? 0 : mcs->invocation_counter()->raw_counter(), |
1370 mcs == NULL ? 0 : mcs->backedge_counter()->raw_counter(), | 1376 mcs == NULL ? 0 : mcs->backedge_counter()->raw_counter(), |
1371 interpreter_invocation_count(), | 1377 interpreter_invocation_count(), |
1372 interpreter_throwout_count(), | 1378 interpreter_throwout_count(), |
1373 _instructions_size); | 1379 _instructions_size); |