Repository navigation
Refactor CodeGen Pipeline Setup into a Single Function - #162556
rust-bors[bot] merged 3 commits into
Conversation
|
Thanks for the pull request, and welcome! The Rust Project has assigned @cuviper (or someone else) to review your changes, you should hear from them (or someone else) within the next two weeks. Please see the contribution instructions and our LLM policy for more information. Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
3d1a7ac to
55d2be6
Compare
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Note, this will conflict with #162822, but that will hopefully be easy to merge first and then rebase this PR.
|
Reminder, once the PR becomes ready for a review, use |
This comment has been minimized.
This comment has been minimized.
This patch refactors setup of the LegacyPassManager for CodeGen into a single function. This simplifies some things (lifetime for the LegacyPM object), but is primarily aimed at enabling rustc to use the new runCodeGenPipeline abstraction (introduced in LLVM 24) which handles all of these details within LLVM and additionally defaults to the NewPM when a target opts-in/the correct LLVM flag is passed.
55d2be6 to
dc7db04
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors r+ |
Rollup of 8 pull requests Successful merges: - #162556 (Refactor CodeGen Pipeline Setup into a Single Function) - #163254 (rustdoc: Fix where-clause placement of free const items & checked type aliases) - #163621 (core: Unstably constify `abort_immediate`) - #161904 (declare C and C-unwind as mutually ABI-compatible) - #163144 (Add Tier 3 targets for Hyperlight guests) - #163537 (remove unnecessary panic from opsem inhabitedness calculation) - #163570 (Add tests for `!` and `bool`'s size and alignment to `coretests`.) - #163606 (ignore hanging next-solver tests, remove unnecessary ignore test) Failed merges: - #163572 (Update the minimum external LLVM to 22)
Rollup merge of #162556 - boomanaiden154:rustc-legacy-pm-refactoring-9-9-26, r=cuviper Refactor CodeGen Pipeline Setup into a Single Function This patch refactors setup of the LegacyPassManager for CodeGen into a single function. This simplifies some things (lifetime for the LegacyPM object), but is primarily aimed at enabling rustc to use the new runCodeGenPipeline abstraction (introduced in LLVM 24) which handles all of these details within LLVM and additionally defaults to the NewPM when a target opts-in/the correct LLVM flag is passed.
Rollup of 8 pull requests Successful merges: - rust-lang/rust#162556 (Refactor CodeGen Pipeline Setup into a Single Function) - rust-lang/rust#163254 (rustdoc: Fix where-clause placement of free const items & checked type aliases) - rust-lang/rust#163621 (core: Unstably constify `abort_immediate`) - rust-lang/rust#161904 (declare C and C-unwind as mutually ABI-compatible) - rust-lang/rust#163144 (Add Tier 3 targets for Hyperlight guests) - rust-lang/rust#163537 (remove unnecessary panic from opsem inhabitedness calculation) - rust-lang/rust#163570 (Add tests for `!` and `bool`'s size and alignment to `coretests`.) - rust-lang/rust#163606 (ignore hanging next-solver tests, remove unnecessary ignore test) Failed merges: - rust-lang/rust#163572 (Update the minimum external LLVM to 22)
This patch refactors setup of the LegacyPassManager for CodeGen into a single function. This simplifies some things (lifetime for the LegacyPM object), but is primarily aimed at enabling rustc to use the new runCodeGenPipeline abstraction (introduced in LLVM 24) which handles all of these details within LLVM and additionally defaults to the NewPM when a target opts-in/the correct LLVM flag is passed.