RFR: 8077615: AARCH64: Add C2 intrinsic for BigInteger::multiplyToLen() method

Andrew Haley aph at redhat.com
Tue Apr 14 10:10:56 UTC 2015

On 04/13/2015 08:12 PM, Vladimir Kozlov wrote:
> In the test you removed next line from previous test. Can you restore them?:
>             System.out.println(b1);
>             System.out.println(b2);

Oops.  It was hard to see that in the diff.

> I have a little problem of mapping code from comments to assembler for 
> multiply_64_x_64_loop(). Extend comments.
> I think in next comments x_xstart should be used on left side instead of 
> 'product':


> +  umulh(rscratch1, x_xstart, y_idx); // product * y_idx -> 
> rscratch1:product
> +  mul(product, x_xstart, y_idx);
> +  adds(product, product, carry);
> +  adc(carry, rscratch1, zr);   // product * y_idx + carry -> carry:product
> Also why not use BytesPerLong instead of BytesPerWord?:


Also, I did a new merge and the port no longer built:

/local/aarch64/dev/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp:61:16: error: 'virtual void MacroAssembler::call_VM_leaf_base(address, int, Label&)' was hidden [-Werror=overloaded-virtual]
   VIRTUAL void call_VM_leaf_base(
This is a correct warning message, so I added a using directive to clarify
the intent.



More information about the hotspot-dev mailing list