add x86-sse2 (32bit) ABI that requires SSE2 target feature by RalfJung · Pull Request #137037 · rust-lang/rust (original) (raw)
This is the first commit of #135408:
The primary goal of this is to make SSE2 required for our i686 targets (at least for the ones that use Pentium 4 as their baseline), to ensure they cannot be affected by #114479. This has been MCPd in rust-lang/compiler-team#808, and is tracked in #133611.
We do this by defining a new ABI that these targets select, and making SSE2 required by the ABI (that's the first commit). That's kind of a hack, but it is the easiest way to make a target feature required via the target spec. In a follow-up change (#135408), we can actually make use of SSE2 for the ABI, but that is running into some infrastructure issues.
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