Skip to content

Handle all modules being serialized during LTO#880

Merged
antoyo merged 1 commit into
rust-lang:masterfrom
bjorn3:lto_all_serialized
May 6, 2026
Merged

Handle all modules being serialized during LTO#880
antoyo merged 1 commit into
rust-lang:masterfrom
bjorn3:lto_all_serialized

Conversation

@bjorn3
Copy link
Copy Markdown
Member

@bjorn3 bjorn3 commented Apr 30, 2026

No description provided.

@rustbot

This comment has been minimized.

@bjorn3 bjorn3 force-pushed the lto_all_serialized branch from 1818556 to 1959b7f Compare April 30, 2026 14:12
@bjorn3
Copy link
Copy Markdown
Member Author

bjorn3 commented Apr 30, 2026

Blocked on rust-lang/rust#156003

@antoyo
Copy link
Copy Markdown
Contributor

antoyo commented Apr 30, 2026

I forgot what's the status regarding LTO.
Can you please remind me where we're at?
Is this for ThinLTO?

@bjorn3 bjorn3 force-pushed the lto_all_serialized branch from 1959b7f to e5622d5 Compare April 30, 2026 14:43
@bjorn3
Copy link
Copy Markdown
Member Author

bjorn3 commented Apr 30, 2026

This is for fat LTO. This currently only fixes something that can happen when you combine incremental compilation with fat LTO and all codegen units are unchanged.

I want to make some changes to cg_llvm and cg_gcc that would cause this code path to be unconditionally hit for fat LTO. I don't know yet if the performance of that would be acceptable though. I wanted to land the fix in this PR first to make sure I don't regress anything in cg_gcc.

@bjorn3 bjorn3 force-pushed the lto_all_serialized branch 2 times, most recently from 85012cb to c6da999 Compare May 6, 2026 12:34
@bjorn3 bjorn3 force-pushed the lto_all_serialized branch from c6da999 to da9e1aa Compare May 6, 2026 13:09
@bjorn3 bjorn3 marked this pull request as ready for review May 6, 2026 13:09
@bjorn3
Copy link
Copy Markdown
Member Author

bjorn3 commented May 6, 2026

CI passes if I force the new code path to be used. Reverted back to only using it when necessary. Ready for review.

@antoyo antoyo merged commit b4f3025 into rust-lang:master May 6, 2026
38 checks passed
@antoyo
Copy link
Copy Markdown
Contributor

antoyo commented May 6, 2026

Thanks for your contribution.

@bjorn3 bjorn3 deleted the lto_all_serialized branch May 6, 2026 14:19
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