rust/tests/codegen/issues
bors 1bc56185ee Auto merge of #139430 - scottmcm:polymorphic-array-into-iter, r=cuviper
Polymorphize `array::IntoIter`'s iterator impl

Today we emit all the iterator methods for every different array width.  That's wasteful since the actual array length never even comes into it -- the indices used are from the separate `alive: IndexRange` field, not even the `N` const param.

This PR switches things so that an `array::IntoIter<T, N>` stores a `PolymorphicIter<[MaybeUninit<T>; N]>`, which we *unsize* to `PolymorphicIter<[MaybeUninit<T>]>` and call methods on that non-`Sized` type for all the iterator methods.

That also necessarily makes the layout consistent between the different lengths of arrays, because of the unsizing.  Compare that to today <https://rust.godbolt.org/z/Prb4xMPrb>, where different widths can't even be deduped because the offset to the indices is different for different array widths.
2025-04-11 23:21:31 +00:00
..
issue-13018.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-15953.rs Use field init shorthand where possible 2024-12-17 14:33:10 -08:00
issue-27130.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-32031.rs x86-sse2 ABI: use SSE registers for floats and SIMD 2025-02-18 16:11:41 +01:00
issue-32364.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-34634.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-34947-pow-i32.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-36010-some-box-is_some.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-37945.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-45222.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-45466.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-45964-bounds-check-slice-pos.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-47278.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-47442.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-56267-2.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-56267.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-56927.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-58881.rs reenable some windows tests 2024-07-14 13:48:29 +03:00
issue-59352.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-64219-fn-ptr-call-returning-never-is-noreturn.rs Add a Few Codegen Tests 2024-11-02 05:33:56 +00:00
issue-68667-unwrap-combinators.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-69101-bounds-check.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-73031.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-73258.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-73338-effecient-cmp.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-73396-bounds-check-after-position.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-73827-bounds-check-index-in-subexpr.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-74938-array-split-at.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-75525-bounds-checks.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-75546.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-75659.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-75978.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-77812.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-84268.rs use the right feature in codegen tests 2025-02-27 12:23:00 +01:00
issue-85872-multiple-reverse.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-86106.rs ignore/fix layout-sensitive tests 2024-08-31 23:56:45 +02:00
issue-86109-eliminate-div-by-zero-check.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-93036-assert-index.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-96274.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-96497-slice-size-nowrap.rs Set both nuw and nsw in slice size calculation 2025-02-13 21:26:48 -08:00
issue-98156-const-arg-temp-lifetime.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-98294-get-mut-copy-from-slice-opt.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-98678-async.rs Explicitly register MSVC/NONMSVC revisions for some codegen tests 2024-12-19 20:36:51 +08:00
issue-98678-closure-coroutine.rs Explicitly register MSVC/NONMSVC revisions for some codegen tests 2024-12-19 20:36:51 +08:00
issue-98678-enum.rs Explicitly register MSVC/NONMSVC revisions for some codegen tests 2024-12-19 20:36:51 +08:00
issue-98678-struct-union.rs Explicitly register MSVC/NONMSVC revisions for some codegen tests 2024-12-19 20:36:51 +08:00
issue-99960.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-101048.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-101082.rs PR feedback 2025-04-09 21:44:59 -07:00
issue-101814.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-103132.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-103285-ptr-addr-overflow-check.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-103327.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-103840.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-105386-ub-in-debuginfo.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-106369.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-107681-unwrap_unchecked.rs Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
issue-108395-branchy-bool-match.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-109328-split_first.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-110797-enum-jump-same.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-111603.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-112509-slice-get-andthen-get.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-113757-bounds-check-after-cmp-max.rs Apply suggestions from code review 2024-06-09 13:25:12 +00:00
issue-114312.rs tests: adapt for LLVM 21 changes 2025-02-28 14:27:22 -05:00
issue-115385-llvm-jump-threading.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-116878.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-118306.rs Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
issue-118392.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-119422.rs replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
issue-121719-common-field-offset.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
issue-122600-ptr-discriminant-update.rs Rollup merge of #139438 - Zalathar:fix-test-122600, r=scottmcm 2025-04-06 16:21:03 +10:00
issue-123712-str-to-lower-autovectorization.rs Improve autovectorization of to_lowercase / to_uppercase functions 2024-09-23 11:31:29 +02:00
issue-126585.rs Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
issue-129795.rs Fix formatting (line too long) 2025-03-14 01:45:10 +01:00
issue-136329-optnone-noinline.rs #[optimize(none)] implies #[inline(never)] 2025-01-31 17:51:49 +00:00
looping-over-ne-bytes-133528.rs test(codegen): add looping_over_ne_bytes test for #133528 2025-02-28 22:37:56 +01:00
str-to-string-128690.rs tests: tighten CHECK-NOTs to make str-to-string-128690.rs less likely to collide with symbol name mangling 2025-02-24 01:17:32 +08:00