RFR: 8332163: C2 SuperWord: refactor PacksetGraph and SuperWord::output into VTransformGraph [v11]
Emanuel Peter
epeter at openjdk.org
Thu Jul 4 10:16:04 UTC 2024
On Thu, 4 Jul 2024 08:23:38 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:
>> Emanuel Peter has updated the pull request incrementally with one additional commit since the last revision:
>>
>> rm newline
>
> src/hotspot/share/opto/vtransform.hpp line 266:
>
>> 264: _req(req),
>> 265: _in(vtransform.arena(), req, req, nullptr),
>> 266: _out(vtransform.arena(), 4, 0, nullptr)
>
> Just noticed this here and totally unrelated, but there are a lot of places where we create a `GrowableArray` without a filler. So, we just pass `nullptr` or 0 (latter should probably be replaced by `nullptr`). Maybe `GrowableArray` should provide a constructor without a filler. Might be worth to do in an RFE at some point.
Feel free to take this up with the Runtime team ;)
> src/hotspot/share/opto/vtransform.hpp line 336:
>
>> 334: VTransformNode(vtransform, n->req()), _node(n) {}
>> 335: Node* node() const { return _node; }
>> 336: virtual VTransformScalarNode* isa_Scalar() override { return this; }
>
> General comment about vtnode classes: The IDE suggests here and at other places that:
>
> Clang-Tidy: 'virtual' is redundant since the function is already declared 'override'
>
> So, you could get rid of `virtual` wherever you have `override`.
I like seeing that it is virtual. `override` is not consistently used in our code-base, but everything is called `virtual`. So I'd like to keep the `virtual` explicit.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19719#discussion_r1665479911
PR Review Comment: https://git.openjdk.org/jdk/pull/19719#discussion_r1665483501
More information about the hotspot-compiler-dev
mailing list