-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Various refactors to the incr comp workproduct handling #97058
Conversation
Some changes occured to rustc_codegen_cranelift cc @bjorn3 |
r? @nagisa (rust-highfive has picked a reviewer for you, use r? to override) |
📌 Commit e11d448a8d338b74d6793a4bf6d5683e32aa6553 has been approved by |
⌛ Testing commit e11d448a8d338b74d6793a4bf6d5683e32aa6553 with merge 1672ba7726f18446d16f9031e5eb429f14acb910... |
💥 Test timed out |
Perfect opportunity to address the comments above. r=me after. |
This is a tiny optimization
It returns the previous work product or panics if there is none. This rename makes the purpose of this method clearer.
e11d448
to
9145fcc
Compare
This improves clarity of the code a bit
A WorkProduct without a saved file is useless
9145fcc
to
e16c3b4
Compare
📌 Commit e16c3b4 has been approved by |
…, r=nagisa Various refactors to the incr comp workproduct handling This is the result of me looking into adding support for having multiple object files for a single codegen unit to incr comp. This is necessary to support inline assembly in cg_clif without requiring partial linking which is not supported on Windows and seems to fail on macOS for some reason. Cg_clif uses an external assembler to handle inline asm and thus produces one object file with regular functions and one object file containing compiled inline asm for each codegen unit which uses inline asm. Current incr comp can't handle this. This PR doesn't yet add support for this, but it makes it easier to do so.
Rollup of 5 pull requests Successful merges: - rust-lang#97058 (Various refactors to the incr comp workproduct handling) - rust-lang#97301 (Allow unstable items to be re-exported unstably without requiring the feature be enabled) - rust-lang#97738 (Fix ICEs from zsts within unsized types with non-zero offsets) - rust-lang#97771 (Remove SIGIO reference on Haiku) - rust-lang#97808 (Add some unstable target features for the wasm target codegen) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Rollup of 5 pull requests Successful merges: - rust-lang#97058 (Various refactors to the incr comp workproduct handling) - rust-lang#97301 (Allow unstable items to be re-exported unstably without requiring the feature be enabled) - rust-lang#97738 (Fix ICEs from zsts within unsized types with non-zero offsets) - rust-lang#97771 (Remove SIGIO reference on Haiku) - rust-lang#97808 (Add some unstable target features for the wasm target codegen) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
This is the result of me looking into adding support for having multiple object files for a single codegen unit to incr comp. This is necessary to support inline assembly in cg_clif without requiring partial linking which is not supported on Windows and seems to fail on macOS for some reason. Cg_clif uses an external assembler to handle inline asm and thus produces one object file with regular functions and one object file containing compiled inline asm for each codegen unit which uses inline asm. Current incr comp can't handle this. This PR doesn't yet add support for this, but it makes it easier to do so.