Mercurial > hg > graal-compiler
diff src/share/vm/runtime/deoptimization.cpp @ 7660:0b646334c5f7
keep track of leafGraphIds only at the StructuredGraph level (see GRAAL-60)
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Fri, 01 Feb 2013 17:32:59 +0100 |
parents | 310a68c63b69 |
children | c6c72de0537e |
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.cpp Fri Feb 01 15:18:22 2013 +0100 +++ b/src/share/vm/runtime/deoptimization.cpp Fri Feb 01 17:32:59 2013 +0100 @@ -209,13 +209,13 @@ assert(deoptee.is_compiled_frame(), "Wrong frame type"); #ifdef GRAAL - PcDesc* pc_desc = ((nmethod*) deoptee.cb())->pc_desc_at(deoptee.pc()); - if (pc_desc != NULL && pc_desc->leaf_graph_id() != -1) { - GraalCompiler* compiler = (GraalCompiler*) ((nmethod*) deoptee.cb())->compiler(); + nmethod* nm = (nmethod*) deoptee.cb(); + GraalCompiler* compiler = (GraalCompiler*) nm->compiler(); + for (jlong* p = nm->leaf_graph_ids_begin(); p != nm->leaf_graph_ids_end(); p++) { if (PrintDeoptimizationDetails) { - tty->print_cr("leaf graph id: %d", pc_desc->leaf_graph_id()); + tty->print_cr("leaf graph id: %d", *p); } - compiler->deopt_leaf_graph(pc_desc->leaf_graph_id()); + compiler->deopt_leaf_graph(*p); } #endif