< prev index next >

src/hotspot/share/opto/parse2.cpp

Print this page
rev 52049 : JDK11-only: Use WB-based acmp barrier

*** 42,55 **** #include "opto/opaquenode.hpp" #include "opto/parse.hpp" #include "opto/runtime.hpp" #include "runtime/deoptimization.hpp" #include "runtime/sharedRuntime.hpp" - #include "utilities/macros.hpp" - #if INCLUDE_SHENANDOAHGC - #include "gc/shenandoah/c2/shenandoahBarrierSetC2.hpp" - #endif #ifndef PRODUCT extern int explicit_null_checks_inserted, explicit_null_checks_elided; #endif --- 42,51 ----
*** 1612,1636 **** Node* tmp = taken_branch; taken_branch = untaken_branch; untaken_branch = tmp; } - taken_branch = _gvn.transform(taken_branch); - untaken_branch = _gvn.transform(untaken_branch); - Node* taken_memory = NULL; - Node* untaken_memory = NULL; - - #if INCLUDE_SHENANDOAHGC - ShenandoahBarrierNode::do_cmpp_if(*this, taken_branch, untaken_branch, taken_memory, untaken_memory); - #endif - // Branch is taken: { PreserveJVMState pjvms(this); set_control(taken_branch); - if (taken_memory != NULL) { - set_all_memory(taken_memory); - } if (stopped()) { if (C->eliminate_boxing()) { // Mark the successor block as parsed branch_block->next_path_num(); --- 1608,1621 ---- Node* tmp = taken_branch; taken_branch = untaken_branch; untaken_branch = tmp; } // Branch is taken: { PreserveJVMState pjvms(this); + taken_branch = _gvn.transform(taken_branch); set_control(taken_branch); if (stopped()) { if (C->eliminate_boxing()) { // Mark the successor block as parsed branch_block->next_path_num();
*** 1643,1656 **** merge(target_bci); } } } set_control(untaken_branch); - if (untaken_memory != NULL) { - set_all_memory(untaken_memory); - } // Branch not taken. if (stopped()) { if (C->eliminate_boxing()) { // Mark the successor block as parsed --- 1628,1639 ---- merge(target_bci); } } } + untaken_branch = _gvn.transform(untaken_branch); set_control(untaken_branch); // Branch not taken. if (stopped()) { if (C->eliminate_boxing()) { // Mark the successor block as parsed
*** 2771,2781 **** // If this is a backwards branch in the bytecodes, add Safepoint maybe_add_safepoint(iter().get_dest()); a = pop(); b = pop(); #if INCLUDE_SHENANDOAHGC ! if (UseShenandoahGC && ShenandoahAcmpBarrier && ShenandoahVerifyOptoBarriers) { a = access_resolve_for_write(a); b = access_resolve_for_write(b); } #endif c = _gvn.transform( new CmpPNode(b, a) ); --- 2754,2764 ---- // If this is a backwards branch in the bytecodes, add Safepoint maybe_add_safepoint(iter().get_dest()); a = pop(); b = pop(); #if INCLUDE_SHENANDOAHGC ! if (UseShenandoahGC && ShenandoahAcmpBarrier) { a = access_resolve_for_write(a); b = access_resolve_for_write(b); } #endif c = _gvn.transform( new CmpPNode(b, a) );
< prev index next >