[8u] RFR 8130150: Implement BigInteger.montgomeryMultiply intrinsic
Vladimir Kozlov
vladimir.kozlov at oracle.com
Thu Feb 18 21:05:11 UTC 2016
Okay.
On 2/18/16 12:38 PM, Vladimir Kempik wrote:
> Hello
>
> To be clear.
>
> I'm proposing :
> 1)if(0), only for Solaris (via ifdef Solaris )
> 2)volatile asm.
>
> That is the combination that passes all jprt tests.
>
> I'll prepare updated webrev a bit later this week.
> Vladimir.
>
> Отправлено с iPad
>
>> 18 февр. 2016 г., в 23:25, Vladimir Kozlov <vladimir.kozlov at oracle.com> написал(а):
>>
>> To be clear. You are proposing only the next change nothing else we discussed before. Right?
>>
>> - if (len >= MONTGOMERY_SQUARING_THRESHOLD) {
>> + if (0) {
>> ::montgomery_square(a, n, m, (unsigned long)inv, longwords);
>>
>> What about 'volatile asm'? Using C code instead of asm?
>>
>> In general I am fine with that since it looks like it is only performance issue.
>>
>> Thanks,
>> Vladimir
>>
>>> On 2/18/16 4:16 AM, Vladimir Kempik wrote:
>>> Hello
>>>
>>> Vladimir Kozlov, do you think I can backport this to jdk8/7 with mentioned workaround (for solaris amd64 only) and then
>>> create a bug to investigate why montgomery_square fails with jdk8/7 and solaris studio 12u1 compiler ?
>>>
>>> It passed the jprt tests now.
>>>
>>> If so It's ok I'll prepare.
>>>
>>> Thanks.
>>>> On 18.02.2016 14:45, Andrew Haley wrote:
>>>>> On 02/18/2016 11:41 AM, Vladimir Kempik wrote:
>>>>> making this routine to always use montgomery_multiply helped to
>>>>> workaround the issue
>>>> OK, so possibly a bug in montgomery_square. I'm not sure what
>>>> "helped" means, though. I guess it doesn't mean "fixes the bug".
>>>>
>>>> Andrew.
>>>>
>>>
More information about the hotspot-compiler-dev
mailing list