rust/tests/codegen/intrinsics
bors 17c1c329a5 Auto merge of #135408 - RalfJung:x86-sse2, r=workingjubilee
x86: use SSE2 to pass float and SIMD types

This builds on the new X86Sse2 ABI landed in https://github.com/rust-lang/rust/pull/137037 to actually make it a separate ABI from the default x86 ABI, and use SSE2 registers. Specifically, we use it in two ways: to return `f64` values in a register rather than by-ptr, and to pass vectors of size up to 128bit in a register (or, well, whatever LLVM does when passing `<4 x float>` by-val, I don't actually know if this ends up in a register).

Cc `@workingjubilee`
Fixes #133611

try-job: aarch64-apple
try-job: aarch64-gnu
try-job: aarch64-gnu-debug
try-job: test-various
try-job: x86_64-gnu-nopt
try-job: dist-i586-gnu-i586-i686-musl
try-job: x86_64-msvc-1
2025-02-19 01:25:01 +00:00
..
aggregate-thin-pointer.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
carrying_mul_add.rs Update carrying_mul_add test to tolerate nuw 2025-01-03 20:25:14 +00:00
cold_path2.rs improve cold_path() 2025-02-17 06:39:58 +01:00
cold_path3.rs improve cold_path() 2025-02-17 06:39:58 +01:00
cold_path.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
compare_bytes.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
const_eval_select.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
ctlz.rs Add codegen tests for changed intrinsics 2024-04-16 12:35:22 +00:00
ctpop.rs Add codegen tests for changed intrinsics 2024-04-16 12:35:22 +00:00
disjoint_bitor.rs Handle the case where the or disjoint folds immediately to a constant 2025-02-02 21:04:10 -08:00
exact_div.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
likely_assert.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
likely.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
mask.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
nearby.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
nontemporal.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
offset_from.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
offset.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
prefetch.rs Run rustfmt on tests/codegen/. 2024-05-31 15:56:43 +10:00
ptr_metadata.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
rotate_left.rs Add codegen tests for changed intrinsics 2024-04-16 12:35:22 +00:00
rustc_intrinsic_must_be_overridden.rs Don't generate functions with the rustc_intrinsic_must_be_overridden attribute 2024-08-19 06:26:52 +08:00
select_unpredictable.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
three_way_compare.rs Set signext or zeroext for integer arguments on RISC-V 2024-10-23 04:42:03 +02:00
transmute-niched.rs transmute should also assume non-null pointers 2025-02-12 23:01:27 -08:00
transmute-x64.rs x86-sse2 ABI: use SSE registers for floats and SIMD 2025-02-18 16:11:41 +01:00
transmute.rs transmute should also assume non-null pointers 2025-02-12 23:01:27 -08:00
typed_swap.rs rename typed_swap → typed_swap_nonoverlapping 2024-12-25 10:53:03 +01:00
unchecked_math.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
unlikely.rs tests/codegen: use -Copt-level=3 instead of -O 2025-02-11 13:41:35 -08:00
volatile_order.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
volatile.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00