rust/tests/codegen/issues
Jörn Horstmann e393f56d37 Improve autovectorization of to_lowercase / to_uppercase functions
Refactor the code in the `convert_while_ascii` helper function to make
it more suitable for auto-vectorization and also process the full ascii
prefix of the string. The generic case conversion logic will only be
invoked starting from the first non-ascii character.

The runtime on microbenchmarks with ascii-only inputs improves between
1.5x for short and 4x for long inputs on x86_64 and aarch64.

The new implementation also encapsulates all unsafe inside the
`convert_while_ascii` function.

Fixes #123712
2024-09-23 11:31:29 +02:00
..
auxiliary
issue-13018.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-15953.rs
issue-27130.rs
issue-32031.rs Adjust tests for x86 "Rust" ABI changes 2024-07-12 10:47:56 +01:00
issue-32364.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-34634.rs
issue-34947-pow-i32.rs
issue-36010-some-box-is_some.rs Apply suggestions from code review 2024-06-09 13:25:12 +00:00
issue-37945.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-45222.rs
issue-45466.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-45964-bounds-check-slice-pos.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10: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
issue-68667-unwrap-combinators.rs Add range attribute to scalar function results and arguments 2024-08-11 19:40:44 +02:00
issue-69101-bounds-check.rs
issue-73031.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-73258.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10: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 Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-73827-bounds-check-index-in-subexpr.rs
issue-74938-array-split-at.rs Apply suggestions from code review 2024-06-09 13:25:12 +00:00
issue-75525-bounds-checks.rs
issue-75546.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-75659.rs
issue-75978.rs
issue-77812.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-81408-dllimport-thinlto-windows.rs
issue-84268.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-85872-multiple-reverse.rs
issue-86106.rs ignore/fix layout-sensitive tests 2024-08-31 23:56:45 +02:00
issue-93036-assert-index.rs Apply suggestions from code review 2024-06-09 13:25:12 +00:00
issue-96274.rs Fix tests and bless 2024-04-24 13:12:33 +01:00
issue-96497-slice-size-nowrap.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-98156-const-arg-temp-lifetime.rs
issue-98294-get-mut-copy-from-slice-opt.rs
issue-99960.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-101048.rs
issue-101082.rs
issue-101814.rs
issue-103132.rs
issue-103285-ptr-addr-overflow-check.rs
issue-103327.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-103840.rs
issue-105386-ub-in-debuginfo.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-106369.rs
issue-107681-unwrap_unchecked.rs Add a set of tests for LLVM 19 2024-08-08 18:08:44 +08:00
issue-109328-split_first.rs Fix tests for 32 bits targets 2024-06-11 07:45:16 +00:00
issue-110797-enum-jump-same.rs Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
issue-111603.rs use [N x i8] for alloca types 2024-04-11 21:42:35 -04:00
issue-112509-slice-get-andthen-get.rs Give inlining bonuses to things that optimize out 2024-06-19 21:35:37 -07: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
issue-115385-llvm-jump-threading.rs
issue-116878.rs
issue-118306.rs Add a set of tests for LLVM 19 2024-08-08 18:08:44 +08:00
issue-118392.rs Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
issue-119422.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
issue-121719-common-field-offset.rs
issue-122600-ptr-discriminant-update.rs Add test for updating enum discriminant through pointer 2024-08-03 16:41:49 +00:00
issue-122805.rs Make issue-122805.rs big endian compatible 2024-06-11 16:07:14 +02: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 Add a set of tests for LLVM 19 2024-08-08 18:08:44 +08:00
str-to-string-128690.rs alloc: add ToString specialization for &&str 2024-08-06 14:37:33 -07:00