Conversation
|
|
|
r? @mejrs rustbot has assigned @mejrs. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
bc690ff to
980f03b
Compare
| if !self.check_config(cfg) { | ||
| debug!("check_attr: config does not match, ignoring attr"); | ||
| return; | ||
| continue; |
There was a problem hiding this comment.
This caused us to skip all assertions after the first one with a cfg that doesn't match. Surprisingly nothing regressed by the lack of test coverage since the introduction of this bug.
| }; | ||
|
|
||
| // FIXME include pre-LTO bitcode in workproduct tracking | ||
| // FIXME add separate incr comp session for post-LTO outputs to use during link step |
There was a problem hiding this comment.
How important are these FIXMEs? Are you planning to fix them?
There was a problem hiding this comment.
I'm working on a follow up PR to do this.
|
@bors r=nnethercote |
Fix incremental compilation for fat LTO Previously we would copy post-LTO artifacts into the incr comp cache for fat LTO despite them never getting used. Also the pre-LTO bitcode didn't get tracked and thus `determine_cgu_reuse` believed it had to regenerate bitcode for all CGUs even when all CGUs would be green. Also move incr comp session dirs out of `CodegenContext`. `CodegenContext` will in the future be serialized and deserialized into a different rustc instance when `-Zno-link`/`-Zlink-only` is used. A separate incr comp session has to be used for both rustc invocations. Part of rust-lang/compiler-team#908
Fix incremental compilation for fat LTO Previously we would copy post-LTO artifacts into the incr comp cache for fat LTO despite them never getting used. Also the pre-LTO bitcode didn't get tracked and thus `determine_cgu_reuse` believed it had to regenerate bitcode for all CGUs even when all CGUs would be green. Also move incr comp session dirs out of `CodegenContext`. `CodegenContext` will in the future be serialized and deserialized into a different rustc instance when `-Zno-link`/`-Zlink-only` is used. A separate incr comp session has to be used for both rustc invocations. Part of rust-lang/compiler-team#908
…uwer Rollup of 13 pull requests Successful merges: - #163317 (Fix incremental compilation for fat LTO) - #163582 (Reapply "bootstrap: Enable rustdoc mergeable CCI for std and internal docs") - #151793 (Add mul_add_relaxed methods for floating-point types) - #162782 (Fix rustdoc ICE caused by mishandling of ambiguity errors) - #163010 (Miri can do dirfd now) - #163535 (Improve `DocStrings` perf) - #163576 (Fix `TypeOutlives` fast-path) - #163587 (Several small span improvements) - #163612 (fix `ValidateBoundVars`) - #163632 (bump rustc-build-sysroot) - #163635 (Revert note about signum of NaN) - #163644 (Add mailmap entry) - #163651 (Remove variants from `feature-gate-autodiff-use` test)
|
💔 I suspect this PR failed tests as part of a rollup After fixing the problem, consider running a try job for the failed job before re-approving. Link to failure: #163650 (comment) @bors try jobs=test-x86_64-mingw-1 |
|
This pull request was unapproved. This PR was contained in a rollup (#163656), which was unapproved. |
This comment has been minimized.
This comment has been minimized.
Fix incremental compilation for fat LTO try-job: test-x86_64-mingw-1
|
💔 Test for e4021fc failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
CodegenContext will in the future be serialized and deserialized into a different rustc instance when -Zno-link/-Zlink-only is used. A separate incr comp session has to be used for both rustc invocations.
Previously we would copy post LTO artifacts into the incr comp cache for fat LTO despite them never getting used. Also the pre LTO bitcode didn't get tracked and thus determine_cgu_reuse believed it had to regenerate bitcode for all CGUs even when all CGUs would be green.
Co-authored-by: Bruno Kolenbrander <59372212+mejrs@users.noreply.github.com>
ebdd423 to
e672a1c
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. |
This reverts commit db2812a.
|
Doesn't reproduce on Linux, so let's try bisecting it using CI. @bors try jobs=test-x86_64-mingw-1 |
This comment has been minimized.
This comment has been minimized.
Fix incremental compilation for fat LTO try-job: test-x86_64-mingw-1
This comment has been minimized.
This comment has been minimized.
|
@bors try jobs=test-x86_64-mingw-1 |
This comment has been minimized.
This comment has been minimized.
Fix incremental compilation for fat LTO try-job: test-x86_64-mingw-1
This comment has been minimized.
This comment has been minimized.
|
💔 Test for 22eb763 failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
…testing" This reverts commit 728beca.
6dce75b to
993bdd7
Compare
|
@bors try jobs=test-x86_64-mingw-1 |
This comment has been minimized.
This comment has been minimized.
Fix incremental compilation for fat LTO try-job: test-x86_64-mingw-1
View all comments
Previously we would copy post-LTO artifacts into the incr comp cache for fat LTO despite them never getting used. Also the pre-LTO bitcode didn't get tracked and thus
determine_cgu_reusebelieved it had to regenerate bitcode for all CGUs even when all CGUs would be green.Also move incr comp session dirs out of
CodegenContext.CodegenContextwill in the future be serialized and deserialized into a different rustc instance when-Zno-link/-Zlink-onlyis used. A separate incr comp session has to be used for both rustc invocations.Part of rust-lang/compiler-team#908