2369 } else {
2370 return _trap_hist_mask + (++_nof_overflow_traps);
2371 }
2372 }
2373
2374 uint overflow_trap_count() const {
2375 return _nof_overflow_traps;
2376 }
2377 uint overflow_recompile_count() const {
2378 return _nof_overflow_recompiles;
2379 }
2380 void inc_overflow_recompile_count() {
2381 _nof_overflow_recompiles += 1;
2382 }
2383 uint decompile_count() const {
2384 return _nof_decompiles;
2385 }
2386 void inc_decompile_count() {
2387 _nof_decompiles += 1;
2388 if (decompile_count() > (uint)PerMethodRecompilationCutoff) {
2389 method()->set_not_compilable(CompLevel_full_optimization, true, "decompile_count > PerMethodRecompilationCutoff");
2390 }
2391 }
2392 uint tenure_traps() const {
2393 return _tenure_traps;
2394 }
2395 void inc_tenure_traps() {
2396 _tenure_traps += 1;
2397 }
2398
2399 // Return pointer to area dedicated to parameters in MDO
2400 ParametersTypeData* parameters_type_data() const {
2401 assert(_parameters_type_data_di != parameters_uninitialized, "called too early");
2402 return _parameters_type_data_di != no_parameters ? data_layout_at(_parameters_type_data_di)->data_in()->as_ParametersTypeData() : NULL;
2403 }
2404
2405 int parameters_type_data_di() const {
2406 assert(_parameters_type_data_di != parameters_uninitialized && _parameters_type_data_di != no_parameters, "no args type data");
2407 return _parameters_type_data_di;
2408 }
2409
|
2369 } else {
2370 return _trap_hist_mask + (++_nof_overflow_traps);
2371 }
2372 }
2373
2374 uint overflow_trap_count() const {
2375 return _nof_overflow_traps;
2376 }
2377 uint overflow_recompile_count() const {
2378 return _nof_overflow_recompiles;
2379 }
2380 void inc_overflow_recompile_count() {
2381 _nof_overflow_recompiles += 1;
2382 }
2383 uint decompile_count() const {
2384 return _nof_decompiles;
2385 }
2386 void inc_decompile_count() {
2387 _nof_decompiles += 1;
2388 if (decompile_count() > (uint)PerMethodRecompilationCutoff) {
2389 method()->set_not_compilable("decompile_count > PerMethodRecompilationCutoff", CompLevel_full_optimization);
2390 }
2391 }
2392 uint tenure_traps() const {
2393 return _tenure_traps;
2394 }
2395 void inc_tenure_traps() {
2396 _tenure_traps += 1;
2397 }
2398
2399 // Return pointer to area dedicated to parameters in MDO
2400 ParametersTypeData* parameters_type_data() const {
2401 assert(_parameters_type_data_di != parameters_uninitialized, "called too early");
2402 return _parameters_type_data_di != no_parameters ? data_layout_at(_parameters_type_data_di)->data_in()->as_ParametersTypeData() : NULL;
2403 }
2404
2405 int parameters_type_data_di() const {
2406 assert(_parameters_type_data_di != parameters_uninitialized && _parameters_type_data_di != no_parameters, "no args type data");
2407 return _parameters_type_data_di;
2408 }
2409
|