# HG changeset patch # User andrew # Date 1501741650 -3600 # Node ID d0c7cea0660f7a8188a7b8c1f6d1a6c8d6388fb0 # Parent 9c1a6eb49acb63cefca0feaa66e44d6c345fae39 8185716: OpenJDK 7 PPC64 port uses a different ins_encode format in ppc.ad Summary: Use existing ins_encode format for implementing 8181420 Reviewed-by: omajid diff -r 9c1a6eb49acb -r d0c7cea0660f src/cpu/ppc/vm/ppc.ad --- a/src/cpu/ppc/vm/ppc.ad Tue Aug 01 14:12:31 2017 +0100 +++ b/src/cpu/ppc/vm/ppc.ad Thu Aug 03 07:27:30 2017 +0100 @@ -3498,6 +3498,14 @@ __ cmplwi(Rcrx, Rsrc1, Isrc2); %} + enc_class enc_cmpldi(flagsReg crx, iRegIsrc src1, uimmL16 src2) %{ + // TODO: PPC port $archOpcode(ppc64Opcode_cmpli); + MacroAssembler _masm(&cbuf); + Register Rsrc1 = reg_to_register_object($src1$$reg); + ConditionRegister Rcrx = reg_to_ConditionRegister_object($crx$$reg); + __ cmpldi(Rcrx, Rsrc1, $src2$$constant); + %} + enc_class enc_btst_reg(iRegIsrc src1, iRegIsrc src2) %{ // TODO: PPC port $archOpcode(ppc64Opcode_and_); @@ -11361,10 +11369,7 @@ match(Set crx (CmpUL src1 src2)); format %{ "CMPLD $crx, $src1, $src2" %} size(4); - ins_encode %{ - // TODO: PPC port $archOpcode(ppc64Opcode_cmpl); - __ cmpld($crx$$CondRegister, $src1$$Register, $src2$$Register); - %} + ins_encode( enc_cmpld(crx, src1, src2) ); ins_pipe(pipe_class_compare); %} @@ -11372,10 +11377,7 @@ match(Set crx (CmpUL src1 src2)); format %{ "CMPLDI $crx, $src1, $src2" %} size(4); - ins_encode %{ - // TODO: PPC port $archOpcode(ppc64Opcode_cmpli); - __ cmpldi($crx$$CondRegister, $src1$$Register, $src2$$constant); - %} + ins_encode( enc_cmpldi(crx, src1, src2) ); ins_pipe(pipe_class_compare); %}