< prev index next >

src/hotspot/cpu/x86/x86_64.ad

Print this page
rev 51400 : [mq]: remove-c2-wb.patch

*** 6662,6691 **** __ movptr(d, Address(r12, s, Address::times_8, BrooksPointer::byte_offset())); %} ins_pipe(ialu_reg_mem); %} - instruct shenandoahWB(rRegP dst, rRegP src, rFlagsReg cr) %{ - match(Set dst (ShenandoahWriteBarrier src)); - effect(DEF dst, USE src, KILL cr); - ins_cost(300); // XXX - format %{ "shenandoah_wb $dst,$src" %} - ins_encode %{ - #if INCLUDE_SHENANDOAHGC - Register s = $src$$Register; - Register d = $dst$$Register; - // We need that first read barrier in order to trigger a SEGV/NPE on incoming NULL. - // Also, it brings s into d in preparation for the call to shenandoah_write_barrier(). - __ movptr(d, Address(s, BrooksPointer::byte_offset())); - __ shenandoah_write_barrier(d); - #else - ShouldNotReachHere(); - #endif - %} - ins_pipe(pipe_slow); - %} - // Convert oop pointer into compressed form instruct encodeHeapOop(rRegN dst, rRegP src, rFlagsReg cr) %{ predicate(n->bottom_type()->make_ptr()->ptr() != TypePtr::NotNull); match(Set dst (EncodeP src)); effect(KILL cr); --- 6662,6671 ----
< prev index next >