8169697: AArch64: Vectorized MLA instruction not generated for some test cases
authornjian
Mon, 19 Dec 2016 10:57:53 +0800
changeset 46433 e7ebb7eaee28
parent 46432 02613efda62e
child 46434 55cc8fa66865
8169697: AArch64: Vectorized MLA instruction not generated for some test cases Summary: Add AddVB/S/I/L/F/D node to commut_op_list, as well as other commutative vector operations. Reviewed-by: roland, kvn Contributed-by: yang.zhang@linaro.org
hotspot/src/share/vm/adlc/formssel.cpp
--- a/hotspot/src/share/vm/adlc/formssel.cpp	Thu May 04 14:54:46 2017 +0000
+++ b/hotspot/src/share/vm/adlc/formssel.cpp	Mon Dec 19 10:57:53 2016 +0800
@@ -3792,11 +3792,16 @@
 void MatchNode::count_commutative_op(int& count) {
   static const char *commut_op_list[] = {
     "AddI","AddL","AddF","AddD",
+    "AddVB","AddVS","AddVI","AddVL","AddVF","AddVD",
     "AndI","AndL",
+    "AndV",
     "MaxI","MinI",
     "MulI","MulL","MulF","MulD",
-    "OrI" ,"OrL" ,
-    "XorI","XorL"
+    "MulVS","MulVI","MulVL","MulVF","MulVD",
+    "OrI","OrL",
+    "OrV",
+    "XorI","XorL",
+    "XorV"
   };
   int cnt = sizeof(commut_op_list)/sizeof(char*);