23 */ |
23 */ |
24 |
24 |
25 #include "incls/_precompiled.incl" |
25 #include "incls/_precompiled.incl" |
26 #include "incls/_bytecodeInfo.cpp.incl" |
26 #include "incls/_bytecodeInfo.cpp.incl" |
27 |
27 |
28 // These variables are declared in parse1.cpp |
|
29 extern int explicit_null_checks_inserted; |
|
30 extern int explicit_null_checks_elided; |
|
31 extern int explicit_null_checks_inserted_old; |
|
32 extern int explicit_null_checks_elided_old; |
|
33 extern int nodes_created_old; |
|
34 extern int nodes_created; |
|
35 extern int methods_parsed_old; |
|
36 extern int methods_parsed; |
|
37 extern int methods_seen; |
|
38 extern int methods_seen_old; |
|
39 |
|
40 |
|
41 //============================================================================= |
28 //============================================================================= |
42 //------------------------------InlineTree------------------------------------- |
29 //------------------------------InlineTree------------------------------------- |
43 InlineTree::InlineTree( Compile* c, const InlineTree *caller_tree, ciMethod* callee, JVMState* caller_jvms, int caller_bci, float site_invoke_ratio ) |
30 InlineTree::InlineTree( Compile* c, const InlineTree *caller_tree, ciMethod* callee, JVMState* caller_jvms, int caller_bci, float site_invoke_ratio ) |
44 : C(c), _caller_jvms(caller_jvms), |
31 : C(c), _caller_jvms(caller_jvms), |
45 _caller_tree((InlineTree*)caller_tree), |
32 _caller_tree((InlineTree*)caller_tree), |
515 } |
502 } |
516 iltp = sub; |
503 iltp = sub; |
517 } |
504 } |
518 return iltp; |
505 return iltp; |
519 } |
506 } |
520 |
|
521 // ---------------------------------------------------------------------------- |
|
522 #ifndef PRODUCT |
|
523 |
|
524 static void per_method_stats() { |
|
525 // Compute difference between this method's cumulative totals and old totals |
|
526 int explicit_null_checks_cur = explicit_null_checks_inserted - explicit_null_checks_inserted_old; |
|
527 int elided_null_checks_cur = explicit_null_checks_elided - explicit_null_checks_elided_old; |
|
528 |
|
529 // Print differences |
|
530 if( explicit_null_checks_cur ) |
|
531 tty->print_cr("XXX Explicit NULL checks inserted: %d", explicit_null_checks_cur); |
|
532 if( elided_null_checks_cur ) |
|
533 tty->print_cr("XXX Explicit NULL checks removed at parse time: %d", elided_null_checks_cur); |
|
534 |
|
535 // Store the current cumulative totals |
|
536 nodes_created_old = nodes_created; |
|
537 methods_parsed_old = methods_parsed; |
|
538 methods_seen_old = methods_seen; |
|
539 explicit_null_checks_inserted_old = explicit_null_checks_inserted; |
|
540 explicit_null_checks_elided_old = explicit_null_checks_elided; |
|
541 } |
|
542 |
|
543 #endif |
|