Mercurial > hg > truffle
comparison src/share/vm/c1/c1_LIRGenerator.cpp @ 3997:940513efe83a
7097679: Tiered: events with bad bci to Gotos reduced from Ifs
Summary: Save bci of instruction that produced Goto and use it to call back to runtime
Reviewed-by: kvn, never
author | iveresov |
---|---|
date | Tue, 04 Oct 2011 10:07:07 -0700 |
parents | dc45ae774613 |
children | 973293defacd |
comparison
equal
deleted
inserted
replaced
3966:5d871c1ff17c | 3997:940513efe83a |
---|---|
2491 if (x->is_safepoint()) { | 2491 if (x->is_safepoint()) { |
2492 ValueStack* state = x->state_before() ? x->state_before() : x->state(); | 2492 ValueStack* state = x->state_before() ? x->state_before() : x->state(); |
2493 | 2493 |
2494 // increment backedge counter if needed | 2494 // increment backedge counter if needed |
2495 CodeEmitInfo* info = state_for(x, state); | 2495 CodeEmitInfo* info = state_for(x, state); |
2496 increment_backedge_counter(info, info->stack()->bci()); | 2496 increment_backedge_counter(info, x->profiled_bci()); |
2497 CodeEmitInfo* safepoint_info = state_for(x, state); | 2497 CodeEmitInfo* safepoint_info = state_for(x, state); |
2498 __ safepoint(safepoint_poll_register(), safepoint_info); | 2498 __ safepoint(safepoint_poll_register(), safepoint_info); |
2499 } | 2499 } |
2500 | 2500 |
2501 // Gotos can be folded Ifs, handle this case. | 2501 // Gotos can be folded Ifs, handle this case. |