RFR: 8263164: assert(_base >= VectorA && _base <= VectorZ) failed: Not a Vector while calling StoreVectorNode::memory_size() [v4]
Jie Fu
jiefu at openjdk.java.net
Mon Mar 15 12:01:07 UTC 2021
On Mon, 15 Mar 2021 08:21:14 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
> > I didn't get your point why ReductionNode also suffers from the very same problem.
> > Could you please make it more clearer?
>
> The following code experiences the very same problem, doesn't it?
>
> ```
> class ReductionNode : public Node {
> ...
> virtual const Type* bottom_type() const {
> BasicType vbt = in(1)->bottom_type()->basic_type();
> return Type::get_const_basic_type(vbt);
> }
> ```
Hi @iwanowww ,
Di you mean the following assert may fail for ReductionNode?
static const Type* get_const_basic_type(BasicType type) {
assert((uint)type <= T_CONFLICT && _const_basic_type[type] != NULL, "bad type");
return _const_basic_type[type];
}
But it seems fine to pass a Type::TOP to it.
(gdb) call Type::TOP->basic_type()
$1 = T_VOID
(gdb) call Type::get_const_basic_type(Type::TOP->basic_type())
$2 = (const Type *) 0x7fff6402bc68
Am I missing something?
Thanks.
Best regards,
Jie
-------------
PR: https://git.openjdk.java.net/jdk/pull/2867
More information about the hotspot-compiler-dev
mailing list