RFR: 8298952: All nodes should have type(n) == Value(n) after IGVN [v3]

Emanuel Peter epeter at openjdk.org
Tue Jan 31 09:42:08 UTC 2023


On Tue, 31 Jan 2023 07:06:31 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> Emanuel Peter has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fix tests that directly query TypeProfileLevel, we had issues because I changed the type
>
> src/hotspot/share/opto/c2_globals.hpp line 623:
> 
>> 621:   develop(uint, VerifyIterativeGVN, 0,                                      \
>> 622:           "Verify Iterative Global Value Numbering"                         \
>> 623:           "=XY, with Y: verify Def-Use modifications during sparse IGVN"    \
> 
> Do you understand what "sparse" refers to? Maybe we should simply remove that word.

Will remove the "sparse".
Maybe the idea was that we only IGVN a part of the graph, as needed (whatever is on the worklist).

> src/hotspot/share/opto/node.hpp line 415:
> 
>> 413: #ifdef ASSERT
>> 414:   bool is_dead() const;
>> 415:   static bool is_not_dead(const Node* n);
> 
> Should this be non-static?

I will leave it as is.
There is a `nullptr` check, so we cannot do `n->is_not_dead()`, that would be undefined behavior if `n == nullptr`. Doing the `nullptr` check at every call-site also is not a nicer alternative.

-------------

PR: https://git.openjdk.org/jdk/pull/11775


More information about the hotspot-compiler-dev mailing list