RFR: 8347901: C2 should remove unused leaf / pure runtime calls [v2]
Marc Chevalier
mchevalier at openjdk.org
Fri Jun 20 15:57:36 UTC 2025
On Fri, 20 Jun 2025 15:35:04 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> The call could have other uses for other projections. Why does this projection make it unused?
>
> I suppose I was not aware that `TypeFunc::Parms` stands for result projection.... the name does not make it immediately apparent.
I see. I think I'd be better to comment on the declaration of the class then. Something saying that CallLeafPureNode represents calls that are pure: they only have data input and output data (and control for practical reasons for now), no exceptions, no memory, no safepoint... They can be freely be moved around, duplicated or, if the result isn't used, removed. Then that explains... a lot of what we are doing, not just `is_unused`.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25760#discussion_r2159294140
More information about the graal-dev
mailing list