RFR: MulAll, Neg, Abs, Blend, and improved mask support
Lupusoru, Razvan A
razvan.a.lupusoru at intel.com
Thu Jan 18 21:56:39 UTC 2018
Hi Vladimir,
I addressed the two issues below as per your suggestions and I have pushed the changes now. Thanks for the feedback!
--Razvan
-----Original Message-----
From: Vladimir Ivanov [mailto:vladimir.x.ivanov at oracle.com]
Sent: Thursday, January 18, 2018 4:49 AM
To: Lupusoru, Razvan A <razvan.a.lupusoru at intel.com>; panama-dev at openjdk.java.net
Subject: Re: RFR: MulAll, Neg, Abs, Blend, and improved mask support
Nice work, Razvan & Vivek! Looks good.
A couple of comments:
src/hotspot/cpu/x86/x86.ad
+operand rymm0() %{
+ constraint(ALLOC_IN_RC(ymm0_reg)); match(VecY);
+ predicate((UseAVX == 1) || (UseAVX == 2)); format%{%}
interface(REG_INTER);
+%}
+
+operand rzmm0() %{
+ constraint(ALLOC_IN_RC(zmm0_reg)); match(VecZ);
+ predicate(UseAVX == 3); format%{%} interface(REG_INTER); %}
+
rymm0 & rzmm0 aren't used. Do you need them for future changes?
src/hotspot/share/adlc/formssel.cpp
+ "ConvertVF2VD", "VectorUnbox", "VectorReinterpret",
VectorUnbox shouldn't be there.
Best regards,
Vladimir Ivanov
On 1/18/18 3:58 AM, Lupusoru, Razvan A wrote:
> Hi everyone,
>
> Please check out the following webrev which includes several patches from myself and my colleague Vivek:
> http://cr.openjdk.java.net/~rlupusoru/panama/webrev_maskbinloadstore_02/
>
> It includes:
>
> * MulAll, Neg, and Abs support for float, double, and int
>
> * Mask loading from boolean array is complete for all combinations
>
> * Blending is supported for all possible types and sizes (except 512)
>
> * Masked loads, stores, and several binary operations are now supported via use of blend
>
> * Fix for a memory ordering issue
>
> * Fix for rebracketing intrinsification which requires shape retention
>
> Please take a look and let me know if you have any comments.
> --Razvan
>
More information about the panama-dev
mailing list