Skip to content

Commit

Permalink
Auto merge of #135408 - RalfJung:x86-sse2, r=workingjubilee
Browse files Browse the repository at this point in the history
x86: use SSE2 to pass float and SIMD types

This builds on the new X86Sse2 ABI landed in rust-lang/rust#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
  • Loading branch information
bors committed Feb 19, 2025
2 parents 056ba45 + 1a6d001 commit c35520c
Showing 0 changed files with 0 additions and 0 deletions.

0 comments on commit c35520c

Please sign in to comment.