Skip to content

Conversation

@Zalathar
Copy link
Member

@Zalathar Zalathar commented Jan 11, 2026

Successful merges:

r? @ghost

Create a similar rollup

asder8215 and others added 30 commits December 13, 2025 19:18
This test currently doesn't fulfill its purpose, as `external dso_local`
can still match `external {{.*}}`. Fix this by using CHECK-NOT directives.

Also, this test is expanded to all platforms where it makes sense, instead
of restricting to loongarch.
The current code applies `dso_local` to the internal generated symbols
instead of the actually-externally one.
They were introduced back when std_detect was a standalone crate
published to crates.io. The motivation for std_detect_dlsym_getauxval
was to allow using getauxval without dlopen when statically linking
musl, which we now unconditionally do for musl. And for
std_detect_file_io to allow no_std usage, which std_detect now supports
even with that feature enabled as it directly uses libc. This also
prevents accidentally disabling runtime feature detection when using
cargo build -Zbuild-std -Zbuild-std-features=
It is no longer a part of the stdarch repo and the rest is not necessary
anymore due to no longer publishing to crates.io.
This will allow extra data to be attached to the `Pat` before it is returned.
… a body.

Handling for inherent associated consts is missing elsewhere, remove so it can be handled later in that handling.

Diagnostic not always be emitted on associated constant

Add a test case and Fix for a different ICE I encountered.

I noticed when trying various permuations of the test case code to see if I could find anymore ICEs. I did, but not one that I expected. So in the instances of the a named const not having any args, insantiate it directly. Since it is likely an inherent assocaiated const.

Added tests.

Centralize the is_type_const() logic.

I also noticed basically the exact same check in other part the code.

Const blocks can't be a type_const, therefore this check is uneeded.

Fix comment spelling error.

get_all_attrs is not valid to call for all DefIds it seems.

Make sure that if the type is omitted for a type_const that we don't ICE.

Co-Authored-By: Boxy <[email protected]>
Tested using OVMF on QEMU.

Signed-off-by: Ayush Singh <[email protected]>
Otherwise you get errors like these if you have an Externally
Implementable Item defined in std:

    error: attribute macro has missing stability attribute
        --> library/std/src/io/mod.rs:2269:1
         |
    2269 | #[eii(on_broken_pipe)]
         | ^^^^^^^^^^^^^^^^^^^^--
         | |
         | in this attribute macro expansion
         |
        ::: library/core/src/macros/mod.rs:1899:5
         |
    1899 |     pub macro eii($item:item) {
         |     ------------- in this expansion of `#[eii]`

Or (fatal) warnings like these:

    warning: missing documentation for an attribute macro
        --> library/std/src/io/mod.rs:2269:1
alloctests: Don't run the longer partial-sort tests under Miri

These tests take hours to run in Miri, which greatly increases the duration of the `x86_64-gnu-aux` job, as observed in rust-lang#150900 (comment).

- [Zulip thread in #t-infra](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/x86_64-gnu-aux.20job.20went.20from.20~2.20to.20~3.2E5.20hours/near/567354541)
…=Mark-Simulacrum,jhpratt

Implement create_dir_all() to operate iteratively instead of recursively

The current implementation of `create_dir_all(...)` in std::fs operates recursively. As mentioned in rust-lang#124309, this could run into a stack overflow with big paths. To avoid this stack overflow issue, this PR implements the method in an iterative manner, preserving the documented behavior of:
```
Recursively create a directory and all of its parent components if they are missing.
This function is not atomic. If it returns an error, any parent components it was able to create will remain.
If the empty path is passed to this function, it always succeeds without creating any directories.
```
 Fix dso_local for external statics with linkage

Tracking issue of the feature: rust-lang#127488

DSO local attributes are not correctly applied to extern statics with `#[linkage = "foo"]` as we generate an internal global for such statics, and the we evaluate (and apply) DSO attributes on the internal one instead.

Fix this by applying DSO local attributes on the actually extern ones, too.
THIR patterns: Replace `AscribeUserType` and `ExpandedConstant` wrappers with per-node data

This PR removes the `AscribeUserType` and `ExpandedConstant` variants from `thir::PatKind`, and replaces them with an `Option<Box<PatExtra>>` field attached to every `thir::Pat`.

### Why remove these variants?

Unlike other THIR pattern kinds, these variants are mere “wrappers” that exist to attach some additional information to an underlying pattern node.

There are several places where code that consumes THIR patterns needs to carefully “unpeel” any wrapper nodes, in order to match on the underlying pattern. This is clunky, and easy to forget to do, especially since it's not always obvious where the wrapper nodes can and can't appear.

Attaching the data to an optional per-node field makes it easier for consuming code to simply ignore the extra data when it is not relevant.

(One downside is that it is now easier to accidentally ignore the extra data when it *is* relevant, but I think that's generally a favourable tradeoff.)

### Impact

After this change, THIR pattern trees should be “logically identical” to the previous THIR pattern trees, in the sense that information that was carried by wrapper nodes should now be directly attached to the non-wrapper nodes that were being wrapped. Types and spans associated with THIR pattern nodes should (hopefully!) still be accurate.

There should be no change to the output of THIR-based checks or MIR building.
Fix ICE: can't type-check body of DefId  for issue rust-lang#148729

This commit fixes rust-lang#148729 for min_const_generic_args rust-lang#132980.

It's pretty small PR. The first commit makes sure that the `type_const`s are made into normal consts in const expressions.

The next one just handles the case rust-lang#148729 of where the type of the const was omitted at which point it was trying to treat a `type_const` again as a regular const. That obviously will fail since a type_const does not have a body.

@rustbot label +F-associated_const_equality +F-min_generic_const_args +I-ICE
Remove std_detect_file_io and std_detect_dlsym_getauxval features

They were introduced back when std_detect was a standalone crate published to crates.io. The [motivation](rust-lang/stdarch#655) for `std_detect_dlsym_getauxval` was to allow using `getauxval` without `dlopen` when statically linking musl, which we now unconditionally do for musl. And for `std_detect_file_io` to allow `no_std` usage, which std_detect now supports even with that feature enabled as it directly uses libc. This also prevents accidentally disabling runtime feature detection when using `cargo build -Zbuild-std -Zbuild-std-features=`
std: sys: fs: uefi: Implement File::write

Tested using OVMF on QEMU.

@rustbot label +O-UEFI
Use f64 NaN in documentation instead of sqrt(-1.0)
Emit an error for linking staticlibs on BPF

Rather than panicking. Also a drive-by diagnostic type visibility reduction.

Fixes rust-lang#149432
Add missing documentation for globs feature

Fixes FIXME by documenting that globs enables wildcard imports (use module::*;).
compiler: Forward attributes to eii-expanded macros

Since rust-lang#150592 is quite complicated to reason about I figured it would be good to split it up in smaller pieces that are easier to digest. Here is the attribute fix in isolation.

## The Problem

With this eii in **library/std/src/io/mod.rs**:
```rs
/// Foo
#[eii(on_broken_pipe)]
#[unstable(feature = "on_broken_pipe", issue = "150588")]
pub fn on_broken_pipe() -> OnBrokenPipe {
    OnBrokenPipe::BackwardsCompatible
}
```

you currently get this compilation error:

```
error: attribute macro has missing stability attribute
    --> library/std/src/io/mod.rs:2269:1
     |
2269 | #[eii(on_broken_pipe)]
     | ^^^^^^^^^^^^^^^^^^^^--
     | |
     | in this attribute macro expansion
     |
    ::: library/core/src/macros/mod.rs:1899:5
     |
1899 |     pub macro eii($item:item) {
     |     ------------- in this expansion of `#[eii]`
```

because with ` MAGIC_EXTRA_RUSTFLAGS=-Zunpretty=expanded ./x build library/std` we can see that a pub item in the expanded code is indeed missing that attribute:

```rs
const _: () =
    {
        #[on_broken_pipe]
        fn on_broken_pipe() -> OnBrokenPipe {
            OnBrokenPipe::BackwardsCompatible
        }
    };
unsafe extern "Rust" {
    /// Foo
    #[unstable(feature = "on_broken_pipe", issue = "150588")]
    #[rustc_eii_extern_item]
    pub safe fn on_broken_pipe()
    -> OnBrokenPipe;
}
#[rustc_builtin_macro(eii_shared_macro)]
#[eii_extern_target(on_broken_pipe)]
pub macro on_broken_pipe { () => {} }
```

## The Solution

With the fix, that error goes away because we get this expanded code instead:

```rs
const _: () =
    {
        #[on_broken_pipe]
        fn on_broken_pipe() -> OnBrokenPipe {
            OnBrokenPipe::BackwardsCompatible
        }
    };
unsafe extern "Rust" {
    /// Foo
    #[unstable(feature = "on_broken_pipe", issue = "150588")]
    #[rustc_eii_extern_item]
    pub safe fn on_broken_pipe()
    -> OnBrokenPipe;
}
/// Foo
#[unstable(feature = "on_broken_pipe", issue = "150588")]
#[rustc_builtin_macro(eii_shared_macro)]
#[eii_extern_target(on_broken_pipe)]
pub macro on_broken_pipe { () => {} }
```

Note that we also need to forward the docs, otherwise get get (fatal) warnings like these:

```
warning: missing documentation for an attribute macro
    --> library/std/src/io/mod.rs:2269:1
```

r? @jdonszelmann

Tracking issues:
- rust-lang#125418
- rust-lang#150588

### What about a test?

rust-lang#150591 will prevent regressions once it lands since it does not build without this fix. I think it is overkill to add a temporary eii to std before that.
Once again, reorganize the EII tests a bit

Some tests in the root of tests/ui/eii actually kind of belonged in the subfolders we made earlier
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Jan 11, 2026
@rustbot rustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jan 11, 2026
@Zalathar
Copy link
Member Author

Replacement for #150923 that also incorporates #150947, which should reduce CI duration from ~4 hours back to the usual ~3 hours.

@bors r+ rollup=never p=5

@rust-bors rust-bors bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 11, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 11, 2026

📌 Commit c6a3792 has been approved by Zalathar

It is now in the queue for this repository.

@rust-bors

This comment has been minimized.

@rust-bors rust-bors bot added the merged-by-bors This PR was explicitly merged by bors. label Jan 11, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 11, 2026

☀️ Test successful - CI
Approved by: Zalathar
Pushing 9bc8b40 to main...

@rust-bors rust-bors bot merged commit 9bc8b40 into rust-lang:main Jan 11, 2026
12 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Jan 11, 2026
@Zalathar Zalathar deleted the rollup-xhWLriD branch January 11, 2026 06:47
@github-actions
Copy link
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing ad04f76 (parent) -> 9bc8b40 (this PR)

Test differences

Show 381 test diffs

Stage 0

  • errors::verify_codegen_ssa_aarch64_softfloat_neon_124: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_aix_strip_not_used_119: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_compiler_builtins_cannot_call_118: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_error_calling_dlltool_115: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_error_calling_dlltool_116: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_error_creating_import_library_118: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_error_creating_remark_dir_117: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_forbidden_target_feature_attr_112: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_cast_wide_pointer_103: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_cast_wide_pointer_104: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_element_type_100: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_element_type_101: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_pointer_105: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_return_type_97: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_float_to_int_unchecked_75: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_floating_point_type_77: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_floating_point_type_78: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_floating_point_vector_77: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_invalid_bitmask_85: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_integer_type_90: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_length_92: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_length_input_type_86: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_type_95: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_second_argument_length_87: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_argument_79: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_first_81: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_first_82: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_index_out_of_bounds_93: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_index_out_of_bounds_94: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_second_83: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_third_83: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_third_argument_length_88: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_unrecognized_intrinsic_79: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_unsupported_cast_107: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_unsupported_operation_107: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_unsupported_operation_108: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_monomorphization_unsupported_symbol_of_size_101: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_lto_dylib_130: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_target_feature_safe_trait_110: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_unknown_ctarget_feature_prefix_125: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_unstable_ctarget_feature_126: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_xcrun_unsuccessful_121: pass -> [missing] (J0)

Stage 1

  • [ui] tests/ui/const-generics/mgca/type_const-array-return.rs: [missing] -> pass (J0)
  • [ui] tests/ui/const-generics/mgca/type_const-recursive.rs: [missing] -> pass (J0)
  • [ui] tests/ui/eii/codegen_cross_crate.rs: pass -> [missing] (J0)
  • [ui] tests/ui/eii/codegen_single_crate.rs: pass -> [missing] (J0)
  • [ui] tests/ui/eii/same-symbol.rs: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_aarch64_softfloat_neon_123: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_aix_strip_not_used_120: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_bpf_staticlib_not_supported_70: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_dlltool_fail_import_library_114: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_error_calling_dlltool_115: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_error_creating_remark_dir_117: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_forbidden_target_feature_attr_112: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_basic_integer_or_ptr_type_74: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_cannot_return_99: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_element_type_100: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_element_type_101: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_pointer_104: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_return_type_97: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_usize_105: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_expected_usize_106: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_inserted_type_94: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_inserted_type_95: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_element_93: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_length_91: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_length_input_type_86: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_return_type_95: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_second_argument_length_88: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_argument_79: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_input_81: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_return_84: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_simd_third_84: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_third_argument_length_88: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_unrecognized_intrinsic_79: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_invalid_monomorphization_unsupported_symbol_103: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_lto_disallowed_128: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_lto_proc_macro_130: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_target_feature_safe_trait_111: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_unstable_ctarget_feature_125: pass -> [missing] (J2)
  • errors::verify_codegen_ssa_xcrun_sdk_path_warning_123: [missing] -> pass (J2)
  • errors::verify_codegen_ssa_xcrun_unsuccessful_122: [missing] -> pass (J2)
  • [codegen] tests/codegen-llvm/direct-access-external-data.rs#DEFAULT: ignore (only executed when the target is loongarch64-unknown-linux-gnu) -> pass (J3)

Stage 2

  • [ui] tests/ui/const-generics/mgca/type_const-array-return.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/mgca/type_const-use.rs: [missing] -> pass (J1)
  • [ui] tests/ui/eii/cross_crate_wrong_ty.rs: pass -> [missing] (J1)
  • [ui] tests/ui/eii/duplicate/multiple_decls.rs: [missing] -> pass (J1)
  • [ui] tests/ui/eii/multiple_decls.rs: pass -> [missing] (J1)
  • [ui] tests/ui/eii/type_checking/cross_crate_wrong_ty.rs: [missing] -> pass (J1)
  • [ui] tests/ui/eii/codegen_single_crate.rs: ignore (gcc backend is marked as ignore) -> [missing] (J4)
  • [ui] tests/ui/eii/linking/codegen_single_crate.rs: [missing] -> ignore (gcc backend is marked as ignore) (J4)
  • [ui] tests/ui/eii/linking/codegen_single_crate.rs: [missing] -> pass (J5)
  • [ui] tests/ui/eii/linking/same-symbol.rs: [missing] -> pass (J5)
  • [ui] tests/ui/eii/multiple_impls.rs: pass -> [missing] (J5)
  • [ui] tests/ui/eii/linking/codegen_cross_crate.rs: [missing] -> ignore (ignored when the operating system is windows) (J6)
  • [ui] tests/ui/eii/linking/same-symbol.rs: [missing] -> ignore (ignored when the operating system is windows) (J6)
  • [ui] tests/ui/eii/multiple_impls.rs: ignore (ignored when the operating system is windows) -> [missing] (J6)
  • [codegen] tests/codegen-llvm/direct-access-external-data.rs#DIRECT: ignore (only executed when the target is loongarch64-unknown-linux-gnu) -> pass (J7)
  • detect::os::aarch64::tests::linux_no_hwcap2_aarch64: [missing] -> pass (J8)
  • [codegen] tests/codegen-llvm/direct-access-external-data.rs#PIE: [missing] -> ignore (ignored when the target vendor is Apple ((handles dso_local differently))) (J9)

(and 222 additional test diffs)

Additionally, 59 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 9bc8b40bc314b74e1d5e5ab21a0df39c55a34806 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. x86_64-gnu-aux: 14510.1s -> 7790.7s (-46.3%)
  2. dist-apple-various: 3052.6s -> 4046.3s (+32.6%)
  3. aarch64-apple: 8913.9s -> 10551.8s (+18.4%)
  4. dist-aarch64-apple: 6389.9s -> 7425.1s (+16.2%)
  5. i686-gnu-nopt-2: 7548.8s -> 8635.0s (+14.4%)
  6. x86_64-gnu-llvm-20-2: 5873.7s -> 5055.0s (-13.9%)
  7. x86_64-gnu-gcc: 3775.9s -> 3291.1s (-12.8%)
  8. pr-check-1: 1925.7s -> 1687.3s (-12.4%)
  9. x86_64-mingw-1: 9269.5s -> 10259.1s (+10.7%)
  10. dist-aarch64-msvc: 6104.9s -> 5458.5s (-10.6%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#148196 Implement create_dir_all() to operate iteratively instead o… 67cdbed4c3153f74fe345f95975e0e0e22e48c7d (link)
#150494 Fix dso_local for external statics with linkage 0c07d7de61ded58a5ae0dede1ad85d8a6d754950 (link)
#150788 THIR patterns: Replace AscribeUserType and `ExpandedConst… 0cd11b78fa6b41dcdc124875cd39486ef82365b5 (link)
#150799 Fix ICE: can't type-check body of DefId for issue #148729 a727b7a6dfe2793007dd9e15be95abe1eed17e1a (link)
#150804 Remove std_detect_file_io and std_detect_dlsym_getauxval fe… 078beedb64ffee38119e959756da1b95a17892d2 (link)
#150852 std: sys: fs: uefi: Implement File::write 7def4984e204302be851ca3ee45797622587f8df (link)
#150871 Use f64 NaN in documentation instead of sqrt(-1.0) c8403ea638b254baef13f3fb915aa3f2ca5069e2 (link)
#150878 Emit an error for linking staticlibs on BPF ff295fc9a48af2021397f2fa0d464d96e22136fd (link)
#150911 Add missing documentation for globs feature 0e1922cab6a58adf9a35303f47abbb8d801cc3a8 (link)
#150913 compiler: Forward attributes to eii-expanded macros 75f3870e7285b46f85ca62901aed626381b0dbeb (link)
#150916 Once again, reorganize the EII tests a bit 54df1a5d3ac9ccf4959f61b375398c79e81cd358 (link)
#150947 alloctests: Don't run the longer partial-sort tests under M… f64bfa2ea60509051bc8b16ecc055890b8c26670 (link)

previous master: ad04f76d84

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (9bc8b40): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

This benchmark run did not return any relevant results for this metric.

Cycles

Results (secondary -2.3%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.3% [-2.3%, -2.3%] 1
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 474.037s -> 473.122s (-0.19%)
Artifact size: 391.31 MiB -> 391.33 MiB (0.00%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.