Skip to content

feat: add late inline support to Jeandle inliner - #113

Open
minchao1024 wants to merge 2 commits into
jeandle:mainfrom
minchao1024:late_inline
Open

minchao1024 wants to merge 2 commits into
jeandle:mainfrom
minchao1024:late_inline

Conversation

@minchao1024

Copy link
Copy Markdown
Member

Related issue(s):

issue #106

What this PR does / why we need it:

Replace IsOkToInline with GetInlineDecision to support eager, delayed,
denied, and node-count-cutoff decisions.

Add one-way eager-to-late scheduling and depth-first inline processing.
Preserve inline scope metadata across rounds, prevent failed late-inline
candidates from being retried, and correctly invalidate analyses when
adding noinline attributes.

Update callback replay logs and add tests for successful and failed
late inlining.

Signed-off-by: minchao1024 <minchao04@163.com>
@mergify

mergify Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Merge Protections

🔴 1 of 2 protections blocking · waiting on 👀 reviews

Protection Waiting on
🔴 Require a review from a maintainer. 👀 reviews
🟢 Pull request title format.

🔴 Require a review from a maintainer.

Waiting for

  • approved-reviews-by = @Maintainer
This rule is failing.
  • approved-reviews-by = @Maintainer

Show 1 satisfied protection

🟢 Pull request title format.

  • title ~= ^(fix|feat|docs|style|refactor|enhance|test|build|ci|chore|revert):

Signed-off-by: minchao1024 <minchao04@163.com>
if (InLateInlinePhase) {
HasLateInlineCandidates = false;
}
break;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We cannot break here because every callee's node count cut off is different. We should try to inline other callees.

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.

2 participants