about summary refs log tree commit diff
path: root/compiler/rustc_metadata/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2022-08-01 18:43:57 +0000
committerbors <bors@rust-lang.org>2022-08-01 18:43:57 +0000
commitfe3342816a282949f014caa05ea2e669ff9d3d3c (patch)
tree11ce44e74d9e0132d9a0daa817aa0e777d74fba6 /compiler/rustc_metadata/src
parentc9e134e1b609e571f4d7d18f91f0ccb1a0cb685d (diff)
parent722d67d5e7d55f7135984fe359892476564429d4 (diff)
downloadrust-fe3342816a282949f014caa05ea2e669ff9d3d3c.tar.gz
rust-fe3342816a282949f014caa05ea2e669ff9d3d3c.zip
Auto merge of #99476 - dpaoliello:rawdylibvectorcall, r=michaelwoerister
Add tests for raw-dylib with vectorcall, and fix vectorcall code generation

* Adds tests for using `raw-dylib` (#58713) with `vectorcall`.
* Fixed code generation for `vectorcall` (parameters have to be marked with `InReg`, just like `fastcall`).
* Enabled running the `raw-dylib` `fastcall` tests when using MSVC (since I had to add support in the test for running MSVC-only tests since GCC doesn't support `vectorcall`).
Diffstat (limited to 'compiler/rustc_metadata/src')
-rw-r--r--compiler/rustc_metadata/src/native_libs.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/rustc_metadata/src/native_libs.rs b/compiler/rustc_metadata/src/native_libs.rs
index c33219e4700..9f6079ecba4 100644
--- a/compiler/rustc_metadata/src/native_libs.rs
+++ b/compiler/rustc_metadata/src/native_libs.rs
@@ -472,7 +472,9 @@ impl<'tcx> Collector<'tcx> {
                 Abi::Fastcall { .. } => {
                     DllCallingConvention::Fastcall(self.i686_arg_list_size(item))
                 }
-                // Vectorcall is intentionally not supported at this time.
+                Abi::Vectorcall { .. } => {
+                    DllCallingConvention::Vectorcall(self.i686_arg_list_size(item))
+                }
                 _ => {
                     self.tcx.sess.span_fatal(
                         item.span,