--- old/src/hotspot/cpu/x86/x86_64.ad 2018-02-22 16:36:16.668566742 +0100 +++ new/src/hotspot/cpu/x86/x86_64.ad 2018-02-22 16:36:16.296569153 +0100 @@ -6436,6 +6436,19 @@ ins_pipe(ialu_reg_reg); // XXX %} +instruct castN2X(rRegL dst, rRegN src) +%{ + match(Set dst (CastP2X src)); + + format %{ "movq $dst, $src\t# ptr -> long" %} + ins_encode %{ + if ($dst$$reg != $src$$reg) { + __ movptr($dst$$Register, $src$$Register); + } + %} + ins_pipe(ialu_reg_reg); // XXX +%} + instruct castP2X(rRegL dst, rRegP src) %{ match(Set dst (CastP2X src));