Integrated: 8263164: assert(_base >= VectorA && _base <= VectorZ) failed: Not a Vector while calling StoreVectorNode::memory_size()
Jie Fu
jiefu at openjdk.java.net
Tue Mar 16 23:30:09 UTC 2021
On Mon, 8 Mar 2021 06:26:01 GMT, Jie Fu <jiefu at openjdk.org> wrote:
> Hi all,
>
> Several Vector API tests failed intermittently due to this assert.
>
> #
> # Internal Error (/home/jvm/jdk/src/hotspot/share/opto/type.hpp:1686), pid=10561, tid=10577
> # assert(_base >= VectorA && _base <= VectorZ) failed: Not a Vector
> #
> # JRE version: OpenJDK Runtime Environment (17.0) (fastdebug build 17-internal+0-adhoc..jdk)
> # Java VM: OpenJDK 64-Bit Server VM (fastdebug 17-internal+0-adhoc..jdk, compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
> # Problematic frame:
> # V [libjvm.so+0x918f44] StoreVectorNode::memory_size() const+0xb4
>
> The reason is that StoreVectorNode::memory_size() will fail if StoreVectorNode->in(MemNode::ValueIn)->bottom_type() == Type::TOP.
> However, this case seems possible during C2's optimization.
> And the same bug exists for LoadVectorNode::memory_size() as well.
>
> The fix returns 0 if StoreVectorNode->in(MemNode::ValueIn)->bottom_type() is not a vector type.
>
> Testing:
> - jdk/incubator/vector
> - tier1~tier3
>
> Any comments?
>
> Thanks.
> Best regards,
> Jie
This pull request has now been integrated.
Changeset: 50697965
Author: Jie Fu <jiefu at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/50697965
Stats: 16 lines in 1 file changed: 11 ins; 1 del; 4 mod
8263164: assert(_base >= VectorA && _base <= VectorZ) failed: Not a Vector while calling StoreVectorNode::memory_size()
Reviewed-by: kvn, vlivanov
-------------
PR: https://git.openjdk.java.net/jdk/pull/2867
More information about the hotspot-compiler-dev
mailing list