changeset 6568:d0c7cea0660f jdk7u151-b01

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
author andrew
date Thu, 03 Aug 2017 07:27:30 +0100
parents 9c1a6eb49acb
children 1396a255c595
files src/cpu/ppc/vm/ppc.ad
diffstat 1 files changed, 10 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- 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);
 %}