mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-18 01:54:47 +02:00
8271515: Integration of JEP 417: Vector API (Third Incubator)
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org> Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org> Co-authored-by: Ningsheng Jian <njian@openjdk.org> Co-authored-by: Xiaohong Gong <xgong@openjdk.org> Co-authored-by: Eric Liu <eliu@openjdk.org> Co-authored-by: Jie Fu <jiefu@openjdk.org> Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org> Co-authored-by: John R Rose <jrose@openjdk.org> Co-authored-by: Paul Sandoz <psandoz@openjdk.org> Co-authored-by: Rado Smogura <mail@smogura.eu> Reviewed-by: kvn, sviswanathan, ngasson
This commit is contained in:
parent
9326eb1461
commit
a59c9b2ac2
104 changed files with 20106 additions and 5976 deletions
|
@ -2134,7 +2134,8 @@ void Compile::Optimize() {
|
|||
if (!failing() && RenumberLiveNodes && live_nodes() + NodeLimitFudgeFactor < unique()) {
|
||||
Compile::TracePhase tp("", &timers[_t_renumberLive]);
|
||||
initial_gvn()->replace_with(&igvn);
|
||||
for_igvn()->clear();
|
||||
Unique_Node_List* old_worklist = for_igvn();
|
||||
old_worklist->clear();
|
||||
Unique_Node_List new_worklist(C->comp_arena());
|
||||
{
|
||||
ResourceMark rm;
|
||||
|
@ -2144,7 +2145,7 @@ void Compile::Optimize() {
|
|||
set_for_igvn(&new_worklist);
|
||||
igvn = PhaseIterGVN(initial_gvn());
|
||||
igvn.optimize();
|
||||
set_for_igvn(save_for_igvn);
|
||||
set_for_igvn(old_worklist); // new_worklist is dead beyond this point
|
||||
}
|
||||
|
||||
// Now that all inlining is over and no PhaseRemoveUseless will run, cut edge from root to loop
|
||||
|
@ -2358,6 +2359,7 @@ bool Compile::has_vbox_nodes() {
|
|||
|
||||
static bool is_vector_unary_bitwise_op(Node* n) {
|
||||
return n->Opcode() == Op_XorV &&
|
||||
n->req() == 2 &&
|
||||
VectorNode::is_vector_bitwise_not_pattern(n);
|
||||
}
|
||||
|
||||
|
@ -2365,7 +2367,7 @@ static bool is_vector_binary_bitwise_op(Node* n) {
|
|||
switch (n->Opcode()) {
|
||||
case Op_AndV:
|
||||
case Op_OrV:
|
||||
return true;
|
||||
return n->req() == 2;
|
||||
|
||||
case Op_XorV:
|
||||
return !is_vector_unary_bitwise_op(n);
|
||||
|
@ -3424,6 +3426,8 @@ void Compile::final_graph_reshaping_main_switch(Node* n, Final_Reshape_Counts& f
|
|||
case Op_StoreVector:
|
||||
case Op_LoadVectorGather:
|
||||
case Op_StoreVectorScatter:
|
||||
case Op_LoadVectorGatherMasked:
|
||||
case Op_StoreVectorScatterMasked:
|
||||
case Op_VectorCmpMasked:
|
||||
case Op_VectorMaskGen:
|
||||
case Op_LoadVectorMasked:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue