RFR: 8342662: C2: Add new phase for backend-specific lowering [v3]
Jasmine Karthikeyan
jkarthikeyan at openjdk.org
Wed Oct 30 04:43:55 UTC 2024
On Mon, 28 Oct 2024 04:55:37 GMT, Quan Anh Mai <qamai at openjdk.org> wrote:
>> Ah, I see what you mean now. I think this makes extending IGVN more appealing because we could continue to do Ideal on lowered nodes, as you mentioned. We could override `PhaseGVN::apply_ideal` to return `nullptr` when processing regular nodes, but run the other `Ideal` type when encountering lowered nodes. Do you think it would be better to add another method to `Node` or should we re-use the existing Ideal call, but lowering specific nodes are guarded with a new node flag?
>
> I think having a new method in `Node` would be more manageable, I can imagine it allows us to reuse pre-lowered nodes for lowering. The example I gave above we reuse `ExtractI` since the semantics is still the same, the only difference is that from here `ExtractI` can only appear with the index parameter being smaller than 4.
I think in general we'll want different nodes to reduce sources of ambiguity, but I've made this change in the latest patch.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21599#discussion_r1821863386
More information about the build-dev
mailing list