Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/bytecodeInfo.cpp @ 367:194b8e3a2fc4
6384206: Phis which are later unneeded are impairing our ability to inline based on static types
Reviewed-by: rasbold, jrose
author | never |
---|---|
date | Wed, 17 Sep 2008 12:59:52 -0700 |
parents | 4a4c365f777d |
children | f6da6f0174ac |
comparison
equal
deleted
inserted
replaced
366:8261ee795323 | 367:194b8e3a2fc4 |
---|---|
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 |