[14] RFR (L): 8235405: C2: Merge AD instructions for different vector operations
Viswanathan, Sandhya
sandhya.viswanathan at intel.com
Mon Dec 9 18:54:32 UTC 2019
Hi Vladimir,
It will be wonderful if we can get this checked in by Thursday deadline for JDK 14.
Best Regards,
Sandhya
-----Original Message-----
From: Vladimir Ivanov <vladimir.x.ivanov at oracle.com>
Sent: Thursday, December 05, 2019 4:01 AM
To: hotspot compiler <hotspot-compiler-dev at openjdk.java.net>
Cc: Bhateja, Jatin <jatin.bhateja at intel.com>; Viswanathan, Sandhya <sandhya.viswanathan at intel.com>
Subject: [14] RFR (L): 8235405: C2: Merge AD instructions for different vector operations
http://cr.openjdk.java.net/~vlivanov/jbhateja/8235405/webrev.00/all
https://bugs.openjdk.java.net/browse/JDK-8235405
Reduce the number of AD instructions needed to implement vector operations by merging existing ones. The patch covers the following
operations:
- LoadVector
- StoreVector
- RoundDoubleModeV
- AndV
- OrV
- XorV
- MulAddVS2VI
- PopCountVI
Indiviual patches:
http://cr.openjdk.java.net/~vlivanov/jbhateja/8235405/webrev.00/individual
As Jatin described, merging is applied only to AD instructions of similar shape. There are some more opportunities for reduction/merging left, but they are deliberately left out for future work.
The patch is derived from the inintial version of generic vector support [1]. Generic vector support was reviewed earlier and the other parts of refactorings in x86.ad will be posted for review separately (7 more patches pending).
Testing: tier1-4, test run on different CPU flavors (KNL, SKL, etc)
Contributed-by: Jatin Bhateja <jatin.bhateja at intel.com>
Reviewed-by: vlivanov, sviswanathan, ?
Best regards,
Vladimir Ivanov
[1]
https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2019-August/034822.html
More information about the hotspot-compiler-dev
mailing list