diff options
| author | Lzu Tao <taolzu@gmail.com> | 2024-05-20 18:38:45 +0000 |
|---|---|---|
| committer | Lzu Tao <taolzu@gmail.com> | 2024-06-09 07:35:24 +0000 |
| commit | beabc5647bc81d62cebbe1d4a71a3666f8ade9d7 (patch) | |
| tree | a419fb103ac5a5b2b5947301a2d64966960a78f1 /tests/codegen | |
| parent | f37c576dbd350adf0644ca9a2b83e28d9d57a076 (diff) | |
| download | rust-beabc5647bc81d62cebbe1d4a71a3666f8ade9d7.tar.gz rust-beabc5647bc81d62cebbe1d4a71a3666f8ade9d7.zip | |
add codegen test for #112509
Diffstat (limited to 'tests/codegen')
| -rw-r--r-- | tests/codegen/issues/issue-112509-slice-get-andthen-get.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/codegen/issues/issue-112509-slice-get-andthen-get.rs b/tests/codegen/issues/issue-112509-slice-get-andthen-get.rs new file mode 100644 index 00000000000..fc04a6cc41a --- /dev/null +++ b/tests/codegen/issues/issue-112509-slice-get-andthen-get.rs @@ -0,0 +1,17 @@ +//@ compile-flags: -O +//@ min-llvm-version: 17 +#![crate_type = "lib"] + +// CHECK-LABEL: @write_u8_variant_a +// CHECK: getelementptr +// CHECK-NEXT: icmp ugt +#[no_mangle] +pub fn write_u8_variant_a( + bytes: &mut [u8], + buf: u8, + offset: usize, +) -> Option<&mut [u8]> { + let buf = buf.to_le_bytes(); + bytes + .get_mut(offset..).and_then(|bytes| bytes.get_mut(..buf.len())) +} |
