mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-14 02:49:40 +00:00
enable msa feature for mips in codegen tests
This commit is contained in:
parent
1b8ab72680
commit
cf12e290fd
@ -9,6 +9,7 @@
|
||||
#![feature(rustc_attrs)]
|
||||
#![feature(simd_ffi)]
|
||||
#![feature(arm_target_feature)]
|
||||
#![feature(mips_target_feature)]
|
||||
#![allow(non_camel_case_types)]
|
||||
|
||||
// Setting up structs that can be used as const vectors
|
||||
@ -45,6 +46,7 @@ extern "unadjusted" {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
pub fn do_call() {
|
||||
unsafe {
|
||||
// CHECK: call void @test_i8x2(<2 x i8> <i8 32, i8 64>
|
||||
|
@ -9,7 +9,7 @@
|
||||
// For LoongArch: see codegen/loongarch-abi
|
||||
|
||||
#![crate_type = "lib"]
|
||||
#![feature(repr_simd, transparent_unions, arm_target_feature)]
|
||||
#![feature(repr_simd, transparent_unions, arm_target_feature, mips_target_feature)]
|
||||
|
||||
use std::marker::PhantomData;
|
||||
|
||||
@ -142,6 +142,7 @@ pub struct Vector(f32x4);
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
pub extern "C" fn test_Vector(_: Vector) -> Vector {
|
||||
loop {}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
//@compile-flags: -C opt-level=3 -C no-prepopulate-passes
|
||||
|
||||
#![feature(core_intrinsics, repr_simd, arm_target_feature)]
|
||||
#![feature(core_intrinsics, repr_simd, arm_target_feature, mips_target_feature)]
|
||||
#![no_std]
|
||||
#![crate_type = "lib"]
|
||||
#![allow(non_camel_case_types)]
|
||||
@ -24,6 +24,7 @@ pub struct i8x16([i8; 16]);
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn dyn_simd_extract(x: i8x16, idx: u32) -> i8 {
|
||||
simd_extract_dyn(x, idx)
|
||||
}
|
||||
@ -34,6 +35,7 @@ unsafe extern "C" fn dyn_simd_extract(x: i8x16, idx: u32) -> i8 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn literal_dyn_simd_extract(x: i8x16) -> i8 {
|
||||
simd_extract_dyn(x, 7)
|
||||
}
|
||||
@ -44,6 +46,7 @@ unsafe extern "C" fn literal_dyn_simd_extract(x: i8x16) -> i8 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn const_dyn_simd_extract(x: i8x16) -> i8 {
|
||||
simd_extract_dyn(x, const { 3 + 4 })
|
||||
}
|
||||
@ -54,6 +57,7 @@ unsafe extern "C" fn const_dyn_simd_extract(x: i8x16) -> i8 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn const_simd_extract(x: i8x16) -> i8 {
|
||||
simd_extract(x, const { 3 + 4 })
|
||||
}
|
||||
@ -64,6 +68,7 @@ unsafe extern "C" fn const_simd_extract(x: i8x16) -> i8 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn dyn_simd_insert(x: i8x16, e: i8, idx: u32) -> i8x16 {
|
||||
simd_insert_dyn(x, idx, e)
|
||||
}
|
||||
@ -74,6 +79,7 @@ unsafe extern "C" fn dyn_simd_insert(x: i8x16, e: i8, idx: u32) -> i8x16 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn literal_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
|
||||
simd_insert_dyn(x, 7, e)
|
||||
}
|
||||
@ -84,6 +90,7 @@ unsafe extern "C" fn literal_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn const_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
|
||||
simd_insert_dyn(x, const { 3 + 4 }, e)
|
||||
}
|
||||
@ -94,6 +101,7 @@ unsafe extern "C" fn const_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
|
||||
#[cfg_attr(target_family = "wasm", target_feature(enable = "simd128"))]
|
||||
#[cfg_attr(target_arch = "arm", target_feature(enable = "neon"))]
|
||||
#[cfg_attr(target_arch = "x86", target_feature(enable = "sse"))]
|
||||
#[cfg_attr(target_arch = "mips", target_feature(enable = "msa"))]
|
||||
unsafe extern "C" fn const_simd_insert(x: i8x16, e: i8) -> i8x16 {
|
||||
simd_insert(x, const { 3 + 4 }, e)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user