https://github.com/openjdk/valhalla/pull/866 has added the vector supports for field reassigning after object reallocation during deoptimization in deoptimization.cpp. The similar vector object reallocation code in "vectorSupport.cpp" can be removed now.
Another is current handling in vectorSupport.cpp has an issue that the multi-fields are forgot to reassign after the vector payload object is reallocated. See code in https://github.com/openjdk/valhalla/blob/lworld%2Bvector/src/hotspot/share/prims/vectorSupport.cpp#L281. This function is called from deoptimization.cpp, and the expected "reassign_fields" is missed after then. This makes several Vector API jtreg tests regression. Either calling "Deoptimization::reassign_fields_by_klass()" after then or cleaning up all the logics in vectorSupport.cpp can fix the issue. And I prefer the latter one.
Another is current handling in vectorSupport.cpp has an issue that the multi-fields are forgot to reassign after the vector payload object is reallocated. See code in https://github.com/openjdk/valhalla/blob/lworld%2Bvector/src/hotspot/share/prims/vectorSupport.cpp#L281. This function is called from deoptimization.cpp, and the expected "reassign_fields" is missed after then. This makes several Vector API jtreg tests regression. Either calling "Deoptimization::reassign_fields_by_klass()" after then or cleaning up all the logics in vectorSupport.cpp can fix the issue. And I prefer the latter one.