< prev index next >

src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp

Print this page
rev 52491 : 8213746: GC/C2 abstraction for C2 matcher

*** 1456,1465 **** --- 1456,1476 ---- handled = false; } return handled; } + bool ZBarrierSetC2::matcher_find_shared_visit(Matcher* matcher, Matcher::MStack& mstack, Node* n, uint opcode, bool& mem_op, int& mem_addr_idx) const { + if (opcode == Op_CallLeaf && + (n->as_Call()->entry_point() == ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded_addr() || + n->as_Call()->entry_point() == ZBarrierSetRuntime::load_barrier_on_weak_oop_field_preloaded_addr())) { + mem_op = true; + mem_addr_idx = TypeFunc::Parms + 1; + return true; + } + return false; + } + // == Verification == #ifdef ASSERT static bool look_for_barrier(Node* n, bool post_parse, VectorSet& visited) {
< prev index next >