< prev index next >

src/cpu/x86/vm/x86_64.ad

Print this page
rev 10719 : [backport] Fix up superfluous changes against upstream
rev 10760 : [backport] Cleanup .ad files includes
rev 10764 : [backport] Rename BrooksPointer to ShenandoahBrooksPointer

*** 525,537 **** // reg_class ip_reg(RIP); %} source_hpp %{ ! ! #include "gc_implementation/shenandoah/brooksPointer.hpp" ! %} //----------SOURCE BLOCK------------------------------------------------------- // This is a block of C++ code which provides values, functions, and // definitions necessary in the rest of the architecture description --- 525,537 ---- // reg_class ip_reg(RIP); %} source_hpp %{ ! #if INCLUDE_ALL_GCS ! #include "gc_implementation/shenandoah/shenandoahBrooksPointer.hpp" ! #endif %} //----------SOURCE BLOCK------------------------------------------------------- // This is a block of C++ code which provides values, functions, and // definitions necessary in the rest of the architecture description
*** 6441,6453 **** match(Set dst (ShenandoahReadBarrier src)); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(s, BrooksPointer::byte_offset())); %} ins_pipe(ialu_reg_mem); %} instruct shenandoahRBNarrow(rRegP dst, rRegN src) %{ --- 6441,6457 ---- match(Set dst (ShenandoahReadBarrier src)); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ + #if INCLUDE_ALL_GCS Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(s, ShenandoahBrooksPointer::byte_offset())); ! #else ! ShouldNotReachHere(); ! #endif %} ins_pipe(ialu_reg_mem); %} instruct shenandoahRBNarrow(rRegP dst, rRegN src) %{
*** 6455,6467 **** match(Set dst (ShenandoahReadBarrier (DecodeN src))); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(r12, s, Address::times_1, BrooksPointer::byte_offset())); %} ins_pipe(ialu_reg_mem); %} instruct shenandoahRBNarrowShift(rRegP dst, rRegN src) %{ --- 6459,6475 ---- match(Set dst (ShenandoahReadBarrier (DecodeN src))); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ + #if INCLUDE_ALL_GCS Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(r12, s, Address::times_1, ShenandoahBrooksPointer::byte_offset())); ! #else ! ShouldNotReachHere(); ! #endif %} ins_pipe(ialu_reg_mem); %} instruct shenandoahRBNarrowShift(rRegP dst, rRegN src) %{
*** 6469,6481 **** match(Set dst (ShenandoahReadBarrier (DecodeN src))); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(r12, s, Address::times_8, BrooksPointer::byte_offset())); %} ins_pipe(ialu_reg_mem); %} // Convert oop pointer into compressed form --- 6477,6493 ---- match(Set dst (ShenandoahReadBarrier (DecodeN src))); effect(DEF dst, USE src); ins_cost(125); // XXX format %{ "shenandoah_rb $dst, $src" %} ins_encode %{ + #if INCLUDE_ALL_GCS Register d = $dst$$Register; Register s = $src$$Register; ! __ movptr(d, Address(r12, s, Address::times_8, ShenandoahBrooksPointer::byte_offset())); ! #else ! ShouldNotReachHere(); ! #endif %} ins_pipe(ialu_reg_mem); %} // Convert oop pointer into compressed form
< prev index next >