Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5f575bc

Browse files
Add a test
1 parent a59a8f9 commit 5f575bc

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

‎tests/codegen/slice-init.rs‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,20 @@ pub fn option_none_init() -> [Option<u8>; N] {
8989
[None; N]
9090
}
9191

92+
use std::mem::MaybeUninit;
93+
94+
// FIXME: This could be optimized into a memset.
95+
// Regression test for <https://github.com/rust-lang/rust/issues/137892>.
96+
#[no_mangle]
97+
pub fn half_uninit() -> [(u128, MaybeUninit<u128>); N] {
98+
// CHECK-NOT: select
99+
// CHECK: br label %repeat_loop_header{{.*}}
100+
// CHECK-NOT: switch
101+
// CHECK: icmp
102+
// CHECK-NOT: call void @llvm.memset.p0
103+
[const { (0, MaybeUninit::uninit()) }; N]
104+
}
105+
92106
// Use an opaque function to prevent rustc from removing useless drops.
93107
#[inline(never)]
94108
pub fn opaque(_: impl Sized) {}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /