< prev index next >
src/hotspot/share/opto/matcher.cpp
Print this page
*** 2356,2374 ****
--- 2356,2396 ----
n->set_req(2, pair);
n->set_req(1, n->in(3));
n->del_req(3);
break;
}
+ case Op_VectorBlend:
+ case Op_VectorInsert: {
+ Node* pair = new BinaryNode(n->in(1), n->in(2));
+ n->set_req(1, pair);
+ n->set_req(2, n->in(3));
+ n->del_req(3);
+ break;
+ }
+ case Op_StoreVectorScatter: {
+ Node* pair = new BinaryNode(n->in(MemNode::ValueIn), n->in(MemNode::ValueIn+1));
+ n->set_req(MemNode::ValueIn, pair);
+ n->del_req(MemNode::ValueIn+1);
+ break;
+ }
case Op_MulAddS2I: {
Node* pair1 = new BinaryNode(n->in(1), n->in(2));
Node* pair2 = new BinaryNode(n->in(3), n->in(4));
n->set_req(1, pair1);
n->set_req(2, pair2);
n->del_req(4);
n->del_req(3);
break;
}
+ #ifdef X86
+ case Op_VectorMaskCmp: {
+ n->set_req(1, new BinaryNode(n->in(1), n->in(2)));
+ n->set_req(2, n->in(3));
+ n->del_req(3);
+ break;
+ }
+ #endif
default:
break;
}
}
< prev index next >