about summary refs log tree commit diff
path: root/compiler/rustc_interface/src/errors.rs
diff options
context:
space:
mode:
authorJacob Pratt <jacob@jhpratt.dev>2025-01-25 23:26:59 -0500
committerGitHub <noreply@github.com>2025-01-25 23:26:59 -0500
commit61e572b3f6aa56f488e358b2f60ca3e3a268dd45 (patch)
treef3f93be47d6817e19964bf46df45aa976aa9fa7b /compiler/rustc_interface/src/errors.rs
parent9ff7ab90adc57ebc07dd165de3f2a5be8598ca5d (diff)
parent893d81f1e219109d098309d9e3f435b9097da47f (diff)
downloadrust-61e572b3f6aa56f488e358b2f60ca3e3a268dd45.tar.gz
rust-61e572b3f6aa56f488e358b2f60ca3e3a268dd45.zip
Rollup merge of #135785 - folkertdev:s390x-vector-passmode-direct, r=bjorn3
use `PassMode::Direct` for vector types on `s390x`

closes https://github.com/rust-lang/rust/issues/135744
tracking issue: https://github.com/rust-lang/rust/issues/130869

Previously, all vector types were type erased to `Ni8`, now we pass non-wrapped vector types directly. That skips emitting a bunch of casting logic in rustc, that LLVM then has to clean up. The initial LLVM IR is also a bit more readable.

This calling convention is tested extensively in `tests/assembly/s390x-vector-abi.rs`, showing that this change has no impact on the ABI in practice.

r? ````@taiki-e````
Diffstat (limited to 'compiler/rustc_interface/src/errors.rs')
0 files changed, 0 insertions, 0 deletions