Skip to content

Rollup of 7 pull requests #139571

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

Closed
wants to merge 17 commits into from

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

scottmcm and others added 17 commits March 14, 2025 21:16
…e visible paths are through any doc hidden path.
It was supposed to be like this from the start, but I forgot to apply the `abs` operation, as I got sidetracked with how to actually compare floats...
This should make it much easier to investigate the individual job changes.
If possible, we should try not to use verbatim paths in Command::current_dir. It might work but it might also break code (including some Windows APIs) that assume the current directory isn't verbatim.
Ensure `swap_nonoverlapping` is really always untyped

This replaces rust-lang#134954, which was arguably overcomplicated.

## Fixes rust-lang#134713

Actually using the type passed to `ptr::swap_nonoverlapping` for anything other than its size + align turns out to not work, so this goes back to always erasing the types down to just bytes.

(Except in `const`, which keeps doing the same thing as before to preserve `@RalfJung's` fix from rust-lang#134689)

## Fixes rust-lang#134946

I'd previously moved the swapping to use auto-vectorization *on bytes*, but someone pointed out on Discord that the tail loop handling from that left a whole bunch of byte-by-byte swapping around.  This goes back to manual tail handling to avoid that, then still triggers auto-vectorization on pointer-width values.  (So you'll see `<4 x i64>` on `x86-64-v3` for example.)
…ss35

Try not to use verbatim paths in `Command::current_dir`

If possible, we should try not to use verbatim paths in `Command::current_dir`. It might work but it might also break code in the subprocess that assume the current directory isn't verbatim (including Windows APIs). cc `@ehuss`

Side note: we now have a lot of ad-hoc fixes like this spread about the place. It'd be good to make a proper `WindowsPath` type that handles all this in one place. But that's a bigger job for another PR.
…=dtolnay

Make `cfg_match!` a semitransparent macro

IIUC this is preferred when (potentially) stabilizing `macro` items, to avoid potentially utilizing def-site hygiene instead of mixed-site.

Tracking issue: rust-lang#115585
Promise `array::from_fn` is generated in order of increasing indices

Fixes rust-lang#139061

I agree this needs to be documented because of the `FnMut`, either with a guarantee or to explicitly disclaim one.

I'm pretty sure this will be non-controversial (like the other "well sure you *could* do it in a different order, but why?" things were), but I couldn't find any previous libs-api decision on it so it's seemingly a new promise that will need FCP.

Basically, yes, it would be plausible to fill in the reverse order, but there's no obvious way we could ever know that that might even be a good idea, so forward seems like an easy thing to promise.  We could always add a `from_fn_rev` or something later if there's ever a strong enough need, but it seems unlikely.

Let's just do the obvious thing so it matches what `[gen(0), gen(1), …, gen(N-1)]` does.
…n, r=nnethercote

Make the compiler suggest actual paths instead of visible paths if the visible paths are through any doc hidden path.

close rust-lang#127011
Currently, when emitting a diagnostic about a valid trait, the compiler suggestes using visible paths of the trait even if they are through a doc hidden path. This PR updates the compiler to suggest actual paths in these cases.
…stic, r=oli-obk

Don't call `Span::with_parent` on the good path in `has_stashed_diagnostic`

More unnecessary incurred span tracking avoided by not calling `span.with_parent(None)`. This is useless on its own but makes it much easier to fix other "span tracking on the good path" issues in the future.

r? oli-obk
Add job summary links to post-merge report

This should make it much easier to investigate the individual job test/duration changes.

The GitHub API handling is a bit crude, but I didn't want to include octocrab, because it more than doubles the current number of dependencies of `citool`...

Can be tested with:
```bash
$ cargo run --manifest-path src/ci/citool/Cargo.toml post-merge-report bad13a9 1e008dd
```

r? ``@marcoieni``
@rustbot rustbot added A-testsuite Area: The testsuite used to check the correctness of rustc 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-infra Relevant to the infrastructure 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. rollup A PR which is a rollup labels Apr 9, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=4

@bors
Copy link
Collaborator

bors commented Apr 9, 2025

📌 Commit 63941e4 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors 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 Apr 9, 2025
bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 9, 2025
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#137412 (Ensure `swap_nonoverlapping` is really always untyped)
 - rust-lang#138869 (Try not to use verbatim paths in `Command::current_dir`)
 - rust-lang#138993 (Make `cfg_match!` a semitransparent macro)
 - rust-lang#139099 (Promise `array::from_fn` is generated in order of increasing indices)
 - rust-lang#139364 (Make the compiler suggest actual paths instead of visible paths if the visible paths are through any doc hidden path.)
 - rust-lang#139468 (Don't call `Span::with_parent` on the good path in `has_stashed_diagnostic`)
 - rust-lang#139481 (Add job summary links to post-merge report)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors
Copy link
Collaborator

bors commented Apr 9, 2025

⌛ Testing commit 63941e4 with merge d572e8b...

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-distcheck failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures:

---- [codegen] tests/codegen/swap-small-types.rs stdout ----

error: verification with 'FileCheck' failed
status: exit status: 1
command: "/checkout/obj/build/tmp/distcheck/build/x86_64-unknown-linux-gnu/llvm/build/bin/FileCheck" "--input-file" "/checkout/obj/build/tmp/distcheck/build/x86_64-unknown-linux-gnu/test/codegen/swap-small-types/swap-small-types.ll" "/checkout/tests/codegen/swap-small-types.rs" "--check-prefix=CHECK" "--allow-unused-prefixes" "--dump-input-context" "100"
stdout: none
--- stderr -------------------------------
/checkout/tests/codegen/swap-small-types.rs:91:16: error: CHECK-NOT: excluded string found in input
 // CHECK-NOT: alloca
               ^
/checkout/obj/build/tmp/distcheck/build/x86_64-unknown-linux-gnu/test/codegen/swap-small-types/swap-small-types.ll:87:17: note: found here
 %_44.i.i.i.i = alloca [48 x i8], align 8
                ^~~~~~

Input file: /checkout/obj/build/tmp/distcheck/build/x86_64-unknown-linux-gnu/test/codegen/swap-small-types/swap-small-types.ll
Check file: /checkout/tests/codegen/swap-small-types.rs

-dump-input=help explains the following input dump.

Input was:
<<<<<<
        1: ; ModuleID = 'swap_small_types.c15a5a94bf56ed41-cgu.0' 
        2: source_filename = "swap_small_types.c15a5a94bf56ed41-cgu.0" 
        3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 
        4: target triple = "x86_64-unknown-linux-gnu" 
        5:  
        6: %"core::mem::maybe_uninit::MaybeUninit<[u8; 8]>" = type { [8 x i8] } 
        7:  
        8: @alloc_78efff4de17083504b82e006a866bf7b = private unnamed_addr constant [46 x i8] c"/rustc/FAKE_PREFIX/library/core/src/ptr/mod.rs", align 1 
        9: @alloc_790ce73328c814caa9d8c01d354dd273 = private unnamed_addr constant <{ ptr, [16 x i8] }> <{ ptr @alloc_78efff4de17083504b82e006a866bf7b, [16 x i8] c".\00\00\00\00\00\00\00\A4\04\00\00\09\00\00\00" }>, align 8 
       10:  
       11: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable 
       12: define void @swap_rgb48_manually(ptr noalias nocapture noundef align 2 dereferenceable(6) %x, ptr noalias nocapture noundef align 2 dereferenceable(6) %y) unnamed_addr #0 { 
       13: start: 
       14:  %temp = alloca [6 x i8], align 2 
       15:  call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 2 dereferenceable(6) %temp, ptr noundef nonnull align 2 dereferenceable(6) %x, i64 6, i1 false) 
       16:  tail call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 2 dereferenceable(6) %x, ptr noundef nonnull align 2 dereferenceable(6) %y, i64 6, i1 false) 
       17:  call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 2 dereferenceable(6) %y, ptr noundef nonnull align 2 dereferenceable(6) %temp, i64 6, i1 false) 
       18:  ret void 
       19: } 
       20:  
       21: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite, inaccessiblemem: readwrite) uwtable 
       22: define void @swap_rgb48(ptr noalias nocapture noundef align 2 dereferenceable(6) %x, ptr noalias nocapture noundef align 2 dereferenceable(6) %y) unnamed_addr #1 personality ptr @rust_eh_personality { 
       23: start: 
       24:  tail call void @llvm.experimental.noalias.scope.decl(metadata !3) 
       25:  tail call void @llvm.experimental.noalias.scope.decl(metadata !6) 
       26:  %_3.sroa.0.0.copyload.i.i6.i.i.i = load i32, ptr %x, align 2, !alias.scope !3, !noalias !6 
       27:  %_4.sroa.0.0.copyload.i.i7.i.i.i = load i32, ptr %y, align 2, !alias.scope !6, !noalias !3 
       28:  store i32 %_4.sroa.0.0.copyload.i.i7.i.i.i, ptr %x, align 2, !alias.scope !3, !noalias !6 
       29:  store i32 %_3.sroa.0.0.copyload.i.i6.i.i.i, ptr %y, align 2, !alias.scope !6, !noalias !3 
       30:  %self7.i.i.i.i = getelementptr inbounds nuw i8, ptr %x, i64 4 
       31:  %self8.i.i.i.i = getelementptr inbounds nuw i8, ptr %y, i64 4 
       32:  tail call void @llvm.experimental.noalias.scope.decl(metadata !8) 
       33:  tail call void @llvm.experimental.noalias.scope.decl(metadata !11) 
       34:  %_3.sroa.0.0.copyload.i12.i.i.i.i = load i16, ptr %self7.i.i.i.i, align 2, !alias.scope !8, !noalias !11 
       35:  %_4.sroa.0.0.copyload.i13.i.i.i.i = load i16, ptr %self8.i.i.i.i, align 2, !alias.scope !11, !noalias !8 
       36:  store i16 %_4.sroa.0.0.copyload.i13.i.i.i.i, ptr %self7.i.i.i.i, align 2, !alias.scope !8, !noalias !11 
       37:  store i16 %_3.sroa.0.0.copyload.i12.i.i.i.i, ptr %self8.i.i.i.i, align 2, !alias.scope !11, !noalias !8 
       38:  ret void 
       39: } 
       40:  
       41: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite, inaccessiblemem: readwrite) uwtable 
       42: define void @swap_rgba64(ptr noalias nocapture noundef align 2 dereferenceable(8) %x, ptr noalias nocapture noundef align 2 dereferenceable(8) %y) unnamed_addr #1 personality ptr @rust_eh_personality { 
       43: start: 
       44:  tail call void @llvm.experimental.noalias.scope.decl(metadata !13) 
       45:  tail call void @llvm.experimental.noalias.scope.decl(metadata !16) 
       46:  %_3.sroa.0.0.copyload.i.i.i.i.i = load i64, ptr %x, align 2, !alias.scope !13, !noalias !16 
       47:  %_4.sroa.0.0.copyload.i.i.i.i.i = load i64, ptr %y, align 2, !alias.scope !16, !noalias !13 
       48:  store i64 %_4.sroa.0.0.copyload.i.i.i.i.i, ptr %x, align 2, !alias.scope !13, !noalias !16 
       49:  store i64 %_3.sroa.0.0.copyload.i.i.i.i.i, ptr %y, align 2, !alias.scope !16, !noalias !13 
       50:  ret void 
       51: } 
       52:  
       53: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite, inaccessiblemem: readwrite) uwtable 
       54: define void @swap_vecs(ptr noalias nocapture noundef align 8 dereferenceable(24) %x, ptr noalias nocapture noundef align 8 dereferenceable(24) %y) unnamed_addr #1 personality ptr @rust_eh_personality { 
       55: start: 
       56:  %0 = load <2 x i64>, ptr %y, align 8, !alias.scope !18, !noalias !22 
       57:  %1 = load <2 x i64>, ptr %x, align 8, !alias.scope !23, !noalias !22 
       58:  store <2 x i64> %0, ptr %x, align 8, !alias.scope !23, !noalias !22 
       59:  store <2 x i64> %1, ptr %y, align 8, !alias.scope !18, !noalias !22 
       60:  %_12.i.i.2.i.i = getelementptr inbounds nuw i8, ptr %x, i64 16 
       61:  %_14.i.i.2.i.i = getelementptr inbounds nuw i8, ptr %y, i64 16 
       62:  tail call void @llvm.experimental.noalias.scope.decl(metadata !26) 
       63:  tail call void @llvm.experimental.noalias.scope.decl(metadata !28) 
       64:  %_3.sroa.0.0.copyload.i.i.i.2.i.i = load i64, ptr %_12.i.i.2.i.i, align 8, !alias.scope !26, !noalias !28 
       65:  %_4.sroa.0.0.copyload.i.i.i.2.i.i = load i64, ptr %_14.i.i.2.i.i, align 8, !alias.scope !28, !noalias !26 
       66:  store i64 %_4.sroa.0.0.copyload.i.i.i.2.i.i, ptr %_12.i.i.2.i.i, align 8, !alias.scope !26, !noalias !28 
       67:  store i64 %_3.sroa.0.0.copyload.i.i.i.2.i.i, ptr %_14.i.i.2.i.i, align 8, !alias.scope !28, !noalias !26 
       68:  ret void 
       69: } 
       70:  
       71: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(argmem: readwrite) uwtable 
       72: define void @swap_slices(ptr noalias nocapture noundef align 8 dereferenceable(16) %x, ptr noalias nocapture noundef align 8 dereferenceable(16) %y) unnamed_addr #0 { 
       73: start: 
       74:  %0 = load ptr, ptr %x, align 8, !nonnull !22, !align !30, !noundef !22 
       75:  %1 = getelementptr inbounds nuw i8, ptr %x, i64 8 
       76:  %2 = load i64, ptr %1, align 8, !noundef !22 
       77:  tail call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %x, ptr noundef nonnull align 8 dereferenceable(16) %y, i64 16, i1 false) 
       78:  store ptr %0, ptr %y, align 8 
       79:  %3 = getelementptr inbounds nuw i8, ptr %y, i64 8 
       80:  store i64 %2, ptr %3, align 8 
       81:  ret void 
       82: } 
       83:  
       84: ; Function Attrs: nonlazybind uwtable 
       85: define void @swap_rgb24_slices(ptr noalias nocapture noundef nonnull align 1 %x.0, i64 noundef %x.1, ptr noalias nocapture noundef nonnull align 1 %y.0, i64 noundef %y.1) unnamed_addr #2 { 
       86: start: 
       87:  %_44.i.i.i.i = alloca [48 x i8], align 8 
not:91                     !~~~~~                     error: no match expected
       88:  %i.i.i.i.i = alloca [8 x i8], align 8 
       89:  %bytes1.i.i.i.i = alloca [8 x i8], align 8 
       90:  %_3 = icmp eq i64 %x.1, %y.1 
       91:  br i1 %_3, label %bb1.i, label %bb3 
       92:  
       93: bb1.i: ; preds = %start 
       94:  tail call void @llvm.experimental.noalias.scope.decl(metadata !31) 
       95:  tail call void @llvm.experimental.noalias.scope.decl(metadata !34) 
       96:  %.not.i.i = icmp eq i64 %x.1, 0 
       97:  br i1 %.not.i.i, label %bb3, label %bb5.i.i 
       98:  
       99: bb5.i.i: ; preds = %bb1.i 
      100:  %0 = mul nuw nsw i64 %x.1, 3 
      101:  %tail.i.i.i = and i64 %0, 7 
      102:  %1 = icmp ugt i64 %x.1, 2 
      103:  br i1 %1, label %bb1.i.i.i, label %bb4.i.i.i 
      104:  
      105: bb1.i.i.i: ; preds = %bb5.i.i 
      106:  %chunks5.i.i.i = lshr i64 %0, 3 
      107:  %min.iters.check = icmp ult i64 %x.1, 11 
      108:  br i1 %min.iters.check, label %bb3.i.i.i.i.preheader, label %vector.ph 
      109:  
      110: vector.ph: ; preds = %bb1.i.i.i 
      111:  %n.vec = and i64 %chunks5.i.i.i, 1152921504606846972 
      112:  br label %vector.body 
      113:  
      114: vector.body: ; preds = %vector.body, %vector.ph 
      115:  %index = phi i64 [ 0, %vector.ph ], [ %index.next, %vector.body ] 
      116:  %2 = getelementptr inbounds nuw %"core::mem::maybe_uninit::MaybeUninit<[u8; 8]>", ptr %x.0, i64 %index 
      117:  %3 = getelementptr inbounds nuw %"core::mem::maybe_uninit::MaybeUninit<[u8; 8]>", ptr %y.0, i64 %index 
      118:  tail call void @llvm.experimental.noalias.scope.decl(metadata !36) 
      119:  tail call void @llvm.experimental.noalias.scope.decl(metadata !39) 
      120:  %4 = getelementptr inbounds nuw i8, ptr %2, i64 16 
      121:  %wide.load = load <2 x i64>, ptr %2, align 1, !alias.scope !41, !noalias !42 
      122:  %wide.load1 = load <2 x i64>, ptr %4, align 1, !alias.scope !41, !noalias !42 
      123:  %5 = getelementptr inbounds nuw i8, ptr %3, i64 16 
      124:  %wide.load2 = load <2 x i64>, ptr %3, align 1, !alias.scope !42, !noalias !41 
      125:  %wide.load3 = load <2 x i64>, ptr %5, align 1, !alias.scope !42, !noalias !41 
      126:  store <2 x i64> %wide.load2, ptr %2, align 1, !alias.scope !41, !noalias !42 
      127:  store <2 x i64> %wide.load3, ptr %4, align 1, !alias.scope !41, !noalias !42 
      128:  store <2 x i64> %wide.load, ptr %3, align 1, !alias.scope !42, !noalias !41 
      129:  store <2 x i64> %wide.load1, ptr %5, align 1, !alias.scope !42, !noalias !41 
      130:  %index.next = add nuw i64 %index, 4 
      131:  %6 = icmp eq i64 %index.next, %n.vec 
      132:  br i1 %6, label %middle.block, label %vector.body, !llvm.loop !43 
      133:  
      134: middle.block: ; preds = %vector.body 
      135:  %cmp.n = icmp eq i64 %chunks5.i.i.i, %n.vec 
      136:  br i1 %cmp.n, label %bb4.i.i.i, label %bb3.i.i.i.i.preheader 
      137:  
      138: bb3.i.i.i.i.preheader: ; preds = %bb1.i.i.i, %middle.block 
      139:  %iter.sroa.0.02.i.i.i.i.ph = phi i64 [ 0, %bb1.i.i.i ], [ %n.vec, %middle.block ] 
      140:  br label %bb3.i.i.i.i 
      141:  
      142: bb3.i.i.i.i: ; preds = %bb3.i.i.i.i.preheader, %bb3.i.i.i.i 
      143:  %iter.sroa.0.02.i.i.i.i = phi i64 [ %_21.i.i.i.i, %bb3.i.i.i.i ], [ %iter.sroa.0.02.i.i.i.i.ph, %bb3.i.i.i.i.preheader ] 
      144:  %_21.i.i.i.i = add nuw nsw i64 %iter.sroa.0.02.i.i.i.i, 1 
      145:  %_12.i.i.i.i = getelementptr inbounds nuw %"core::mem::maybe_uninit::MaybeUninit<[u8; 8]>", ptr %x.0, i64 %iter.sroa.0.02.i.i.i.i 
      146:  %_14.i.i.i.i = getelementptr inbounds nuw %"core::mem::maybe_uninit::MaybeUninit<[u8; 8]>", ptr %y.0, i64 %iter.sroa.0.02.i.i.i.i 
      147:  tail call void @llvm.experimental.noalias.scope.decl(metadata !36) 
      148:  tail call void @llvm.experimental.noalias.scope.decl(metadata !39) 
      149:  %_3.sroa.0.0.copyload.i.i.i.i.i = load i64, ptr %_12.i.i.i.i, align 1, !alias.scope !41, !noalias !42 
      150:  %_4.sroa.0.0.copyload.i.i.i.i.i = load i64, ptr %_14.i.i.i.i, align 1, !alias.scope !42, !noalias !41 
      151:  store i64 %_4.sroa.0.0.copyload.i.i.i.i.i, ptr %_12.i.i.i.i, align 1, !alias.scope !41, !noalias !42 
      152:  store i64 %_3.sroa.0.0.copyload.i.i.i.i.i, ptr %_14.i.i.i.i, align 1, !alias.scope !42, !noalias !41 
      153:  %exitcond.not.i.i.i.i = icmp eq i64 %_21.i.i.i.i, %chunks5.i.i.i 
      154:  br i1 %exitcond.not.i.i.i.i, label %bb4.i.i.i, label %bb3.i.i.i.i, !llvm.loop !46 
      155:  
      156: bb4.i.i.i: ; preds = %bb3.i.i.i.i, %middle.block, %bb5.i.i 
      157:  %.not.i.i.i = icmp eq i64 %tail.i.i.i, 0 
      158:  br i1 %.not.i.i.i, label %bb3, label %bb5.i.i.i 
      159:  
      160: bb5.i.i.i: ; preds = %bb4.i.i.i 
      161:  %7 = and i64 %0, 9223372036854775800 
      162:  %8 = getelementptr inbounds nuw i8, ptr %x.0, i64 %7 
      163:  %_20.i.i.i = getelementptr inbounds nuw i8, ptr %y.0, i64 %7 
      164:  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %bytes1.i.i.i.i), !noalias !47 
      165:  store i64 %tail.i.i.i, ptr %bytes1.i.i.i.i, align 8, !noalias !47 
      166:  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %i.i.i.i.i), !noalias !47 
      167:  store i64 0, ptr %i.i.i.i.i, align 8, !noalias !47 
      168:  %9 = icmp samesign ult i64 %tail.i.i.i, 4 
      169:  br i1 %9, label %bb4.i.i.i.i, label %bb1.i.i.i.i 
      170:  
      171: bb1.i.i.i.i: ; preds = %bb5.i.i.i 
      172:  tail call void @llvm.experimental.noalias.scope.decl(metadata !48) 
      173:  tail call void @llvm.experimental.noalias.scope.decl(metadata !51) 
      174:  %_3.sroa.0.0.copyload.i.i6.i.i.i = load i32, ptr %8, align 1, !alias.scope !53, !noalias !54 
      175:  %_4.sroa.0.0.copyload.i.i7.i.i.i = load i32, ptr %_20.i.i.i, align 1, !alias.scope !54, !noalias !53 
      176:  store i32 %_4.sroa.0.0.copyload.i.i7.i.i.i, ptr %8, align 1, !alias.scope !53, !noalias !54 
      177:  store i32 %_3.sroa.0.0.copyload.i.i6.i.i.i, ptr %_20.i.i.i, align 1, !alias.scope !54, !noalias !53 
      178:  store i64 4, ptr %i.i.i.i.i, align 8, !noalias !47 
      179:  br label %bb4.i.i.i.i 
      180:  
      181: bb4.i.i.i.i: ; preds = %bb1.i.i.i.i, %bb5.i.i.i 
      182:  %count6.i.i.i.i = phi i64 [ 0, %bb5.i.i.i ], [ 4, %bb1.i.i.i.i ] 
      183:  %_17.i.i.i.i = and i64 %0, 2 
      184:  %10 = icmp eq i64 %_17.i.i.i.i, 0 
      185:  br i1 %10, label %bb8.i.i.i.i, label %bb5.i.i.i.i 
      186:  
      187: bb5.i.i.i.i: ; preds = %bb4.i.i.i.i 
        .
        .
        .
>>>>>>
------------------------------------------
---
test result: FAILED. 763 passed; 1 failed; 77 ignored; 0 measured; 0 filtered out; finished in 7.78s

Some tests failed in compiletest suite=codegen mode=codegen host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
Build completed unsuccessfully in 0:35:29
make: *** [Makefile:49: check] Error 1
Command has failed. Rerun with -v to see more details.
Build completed unsuccessfully in 0:41:05
  local time: Wed Apr  9 12:50:27 UTC 2025
  network time: Wed, 09 Apr 2025 12:50:27 GMT
##[error]Process completed with exit code 1.
Post job cleanup.

@bors
Copy link
Collaborator

bors commented Apr 9, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc rollup A PR which is a rollup 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-infra Relevant to the infrastructure 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.

10 participants