diff -r d3aefa77da6c -r 910b77f150c4 src/cpu/mips/vm/mips_64.ad --- a/src/cpu/mips/vm/mips_64.ad Thu Mar 30 08:45:59 2017 -0400 +++ b/src/cpu/mips/vm/mips_64.ad Fri Mar 31 12:43:02 2017 -0400 @@ -12089,10 +12089,8 @@ ins_encode %{ Register src = $src$$Register; Register dst = $dst$$Register; - if (src != dst) { - __ move(dst, src); - } - __ encode_heap_oop(dst); + + __ encode_heap_oop(dst, src); %} ins_pipe( ialu_regL_regL ); %} @@ -12115,10 +12113,8 @@ ins_encode %{ Register s = $src$$Register; Register d = $dst$$Register; - if (s != d) { - __ move(d, s); - } - __ decode_heap_oop(d); + + __ decode_heap_oop(d, s); %} ins_pipe( ialu_regL_regL ); %}