< prev index next >
src/share/vm/c1/c1_LinearScan.cpp
Print this page
rev 8802 : G1 performance improvements: card batching, joining, sorting, prefetching and write barrier fence elision and simplification based on a global syncrhonization using handshakes piggybacking on thread-local safepoints.
*** 6302,6312 ****
LIR_OpBranch* pred_last_branch = (LIR_OpBranch*)pred_last_op;
if (pred_last_branch->block() == block && pred_last_branch->cond() == lir_cond_always && pred_last_branch->info() == NULL) {
// replace the jump to a return with a direct return
// Note: currently the edge between the blocks is not deleted
! pred_instructions->at_put(pred_instructions->length() - 1, new LIR_Op1(lir_return, return_opr));
#ifdef ASSERT
return_converted.set_bit(pred->block_id());
#endif
}
}
--- 6302,6312 ----
LIR_OpBranch* pred_last_branch = (LIR_OpBranch*)pred_last_op;
if (pred_last_branch->block() == block && pred_last_branch->cond() == lir_cond_always && pred_last_branch->info() == NULL) {
// replace the jump to a return with a direct return
// Note: currently the edge between the blocks is not deleted
! pred_instructions->at_put(pred_instructions->length() - 1, new LIR_Op1Safepoint(lir_return, return_opr, NULL));
#ifdef ASSERT
return_converted.set_bit(pred->block_id());
#endif
}
}
< prev index next >