diff options
| author | bors <bors@rust-lang.org> | 2018-12-14 16:15:20 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-12-14 16:15:20 +0000 |
| commit | 1897657ef09eea3d0b0afbbbd154a12fbb8fbf3f (patch) | |
| tree | 617ccab3713b1745724294eca3a33ad0642b6244 /src/test/codegen | |
| parent | 7d03617bab24a689bc704e71e509b9c11c655f26 (diff) | |
| parent | e065de2ea88430c55b824f5f280c965e1230762b (diff) | |
| download | rust-1897657ef09eea3d0b0afbbbd154a12fbb8fbf3f.tar.gz rust-1897657ef09eea3d0b0afbbbd154a12fbb8fbf3f.zip | |
Auto merge of #56818 - kennytm:rollup-2, r=kennytm
Rollup of 14 pull requests (first batch) Successful merges: - #56562 (Update libc version required by rustc) - #56609 (Unconditionally emit the target-cpu LLVM attribute.) - #56637 (rustdoc: Fix local reexports of proc macros) - #56658 (Add non-panicking `maybe_new_parser_from_file` variant) - #56695 (Fix irrefutable matches on integer ranges) - #56699 (Use a `newtype_index!` within `Symbol`.) - #56702 ([self-profiler] Add column for percent of total time) - #56708 (Remove some unnecessary feature gates) - #56709 (Remove unneeded extra chars to reduce search-index size) - #56744 (specialize: remove Boxes used by Children::insert) - #56748 (Update panic message to be clearer about env-vars) - #56749 (x86: Add the `adx` target feature to whitelist) - #56756 (Disable btree pretty-printers on older gdbs) - #56789 (rustc: Add an unstable `simd_select_bitmask` intrinsic) r? @ghost
Diffstat (limited to 'src/test/codegen')
| -rw-r--r-- | src/test/codegen/simd-intrinsic-generic-select.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/codegen/simd-intrinsic-generic-select.rs b/src/test/codegen/simd-intrinsic-generic-select.rs index 8a64d7437d8..24a4b2b1b05 100644 --- a/src/test/codegen/simd-intrinsic-generic-select.rs +++ b/src/test/codegen/simd-intrinsic-generic-select.rs @@ -21,10 +21,15 @@ pub struct f32x4(pub f32, pub f32, pub f32, pub f32); #[repr(simd)] #[derive(Copy, Clone, PartialEq, Debug)] +pub struct f32x8(f32, f32, f32, f32, f32, f32, f32, f32); + +#[repr(simd)] +#[derive(Copy, Clone, PartialEq, Debug)] pub struct b8x4(pub i8, pub i8, pub i8, pub i8); extern "platform-intrinsic" { fn simd_select<T, U>(x: T, a: U, b: U) -> U; + fn simd_select_bitmask<T, U>(x: T, a: U, b: U) -> U; } // CHECK-LABEL: @select @@ -33,3 +38,10 @@ pub unsafe fn select(m: b8x4, a: f32x4, b: f32x4) -> f32x4 { // CHECK: select <4 x i1> simd_select(m, a, b) } + +// CHECK-LABEL: @select_bitmask +#[no_mangle] +pub unsafe fn select_bitmask(m: i8, a: f32x8, b: f32x8) -> f32x8 { + // CHECK: select <8 x i1> + simd_select_bitmask(m, a, b) +} |
