Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JProfiling fix to avoid too many internal pointers #21056

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

vijaysun-omr
Copy link
Contributor

Jprofiling adds control flow to the IL as part of the lowering of the calls to profile values. This control flow splits blocks, and in the process creates temps for values commoned across the split point. If there are enough internal pointers commoned in the method, the lower may end up creating more than the max number of internal pointers allowed, thus causing the compile to fail. This commit keeps track of how many internal pointers are created and avoids lowering any more calls once we have reached a certain threshold. Also added an env var to control this threshold for experimenting in the future.

Jprofiling adds control flow to the IL as part of the lowering of
the calls to profile values. This control flow splits blocks, and
in the process creates temps for values commoned across the split
point. If there are enough internal pointers commoned in the method,
the lower may end up creating more than the max number of internal
pointers allowed, thus causing the compile to fail. This commit
keeps track of how many internal pointers are created and avoids
lowering any more calls once we have reached a certain threshold.
Also added an env var to control this threshold for experimenting
in the future.

Signed-off-by: Vijay Sundaresan <[email protected]>
@vijaysun-omr
Copy link
Contributor Author

@r30shah your review would be appreciated

Copy link
Contributor

@r30shah r30shah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes looks good to me.

@r30shah
Copy link
Contributor

r30shah commented Feb 3, 2025

Jenkins test sanity.functional,sanity.openjdk xlinux,plinux,zlinux,alinux jdk21

@vijaysun-omr vijaysun-omr changed the title WIP : JProfiling fix to avoid too many internal pointers JProfiling fix to avoid too many internal pointers Feb 3, 2025
@JamesKingdon
Copy link
Contributor

JamesKingdon commented Feb 3, 2025

i ran this change with a testcase that was hitting the internal pointer limit and found that it resolved the problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants