-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Disable LLVM newPM by default #91190
Conversation
r? @oli-obk (rust-highfive has picked a reviewer for you, use r? to override) |
7601255
to
01f8b6c
Compare
r? @nikic |
5026492
to
01f8b6c
Compare
@bors rollup=never |
The job Click to see the possible cause of the failure (guessed by this bot)
|
Hm, I'm not sure this is a good idea, at least for nightly. I'm afraid this is going to break more than it fixes, as we've only had isolated reports of pathological compile-time regressions. I don't remember the details, but I'm pretty sure I've seen various nightly-only projects make changes to accommodate the NewPM switch (I think one issue was different pass naming for sanitizers or something?) and switching back and forth would be rather annoying. |
The job Click to see the possible cause of the failure (guessed by this bot)
|
I tend to agree. Felix's suggestion was to disable for 1.58 now and then re-enable when we have fixes, but a less disruptive option could be simply landing an equivalent of #91189 sometime next week. |
nominating for discussion two weeks from today (2021-12-16), in order to evaluate whether to land by 2021-12-23, or if the problem was addressed by more targetted fix in meantime. |
Current theory is that llvm/llvm-project@a8c2ba1 on LLVM's side will address #91128 in a less heavy handed way than outright disabling NewPM. |
We want to backport either this or #92110 to beta. |
☔ The latest upstream changes (presumably #91125) made this pull request unmergeable. Please resolve the merge conflicts. |
@nagisa this is targeting master -- but hasn't landed yet there. It looks like some of the discussion indicates we may want to only land this on beta? It merges cleanly onto beta, so I'm going to backport it there for now. |
Yeah, beta only. We merged a proper fix to master. Originally this was intended for master as well, but is no longer necessary. |
OK, I'll go ahead and close this PR then -- backport in #92592. |
…ulacrum [beta] backports Backports these PRs: * Fix HashStable implementation on InferTy rust-lang#91892 * Revert setting a default for the MACOSX_DEPLOYMENT_TARGET env var for linking rust-lang#91870 * Make rustdoc headings black, and markdown blue rust-lang#91534 * Disable LLVM newPM by default rust-lang#91190 * Deduplicate projection sub-obligations rust-lang#90423 * Sync portable-simd to remove autosplats rust-lang#91484 by dropping portable_simd entirely (keeping the subtree, just from std/core) * Quote bat script command line rust-lang#92208 * Fix failing tests rust-lang#92201 (CI fix) r? `@Mark-Simulacrum`
This is a temporary solution until we manage to get some sort of a workaround for the rampant inlining behaviour and other issues such as #91128 in place. Expect significant compilation time regressions in other areas, though.