< prev index next >

src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp

Print this page
rev 52662 : [mq]: 8214206

@@ -2553,11 +2553,11 @@
 
   Register lreg = left->as_register();
   Register dreg = result->as_register();
 
   if (right->is_constant()) {
-    int divisor = right->as_constant_ptr()->as_jint();
+    jint divisor = right->as_constant_ptr()->as_jint();
     assert(divisor > 0 && is_power_of_2(divisor), "must be");
     if (code == lir_idiv) {
       assert(lreg == rax, "must be rax,");
       assert(temp->as_register() == rdx, "tmp register must be rdx");
       __ cdql(); // sign extend into rdx:rax

@@ -2565,11 +2565,11 @@
         __ subl(lreg, rdx);
       } else {
         __ andl(rdx, divisor - 1);
         __ addl(lreg, rdx);
       }
-      __ sarl(lreg, log2_intptr(divisor));
+      __ sarl(lreg, log2_jint(divisor));
       move_regs(lreg, dreg);
     } else if (code == lir_irem) {
       Label done;
       __ mov(dreg, lreg);
       __ andl(dreg, 0x80000000 | (divisor - 1));
< prev index next >