about summary refs log tree commit diff
path: root/src/test/ui/simd-intrinsic
AgeCommit message (Collapse)AuthorLines
2021-10-04Rearrange test/ui/{simd,simd-intrinsic}Jubilee Young-1149/+0
Mostly test/ui/simd-intrinsic -> test/ui/simd/intrinsic Intrinsics-per-se tests moved into that folder Repetitive names were cut short. Duplicate names given -pass annotations.
2021-10-04Use arrays over tuples in SIMD testsJubilee Young-40/+17
Simd([u8; 64]) is now valid for repr(simd), so simplify tests with huge tuples instead. This also found some completely untested code, so let's just ditch that.
2021-09-11Allow simd_shuffle to accept vectors of any lengthCaleb Zulawski-0/+54
2021-07-01Minor adjustments and refactoringFabian Wolff-11/+4
2021-06-08Check the number of generic lifetime and const parameters of intrinsicsFabian Wolff-0/+47
2021-05-13fix test suiteRalf Jung-39/+45
2021-04-03Remove redundant `ignore-tidy-linelength` annotationsSimon Jakobi-3/+2
This is step 2 towards fixing #77548. In the codegen and codegen-units test suites, the `//` comment markers were kept in order not to affect any source locations. This is because these tests cannot be automatically `--bless`ed.
2021-03-19Add simd_neg platform intrinsicSparrowLii-15/+29
2021-03-05Bump mir-opt-level from 3 to 4 in testsSantiago Pastorino-2/+2
2021-01-23Fix maximum SIMD lane count, and expose it to other crates. Disallow SIMD ↵Caleb Zulawski-50/+17
vectors with non-power-of-two lengths.
2020-10-03Support vectors with fewer than 8 elements for simd_select_bitmaskAmanieu d'Antras-5/+5
2020-02-20Revert "Rollup merge of #69280 - ↵Dylan MacKenzie-23/+17
ecstatic-morse:promote-shuffle-no-special-case, r=petrochenkov" This reverts commit 61d3b6dedb1ec1f3e3cbd3d66b1a3453225bc37c, reversing changes made to c6ad1e2c2a0c7e48537617d36085f866fa6a65a3.
2020-02-18Add `#[rustc_args_required_const]` to `simd_shuffle` testsDylan MacKenzie-17/+23
2019-12-25Add test cases which exercise the fix.jumbatm-0/+65
2019-12-21rework run-fail and support check,build-failMazdak Farrokhzad-76/+90
2019-11-14Fix ui tests with better error code usageGuillaume Gomez-0/+8
2019-07-20Remove vector fadd/fmul reduction workaroundsNikita Popov-47/+21
The bugs that this was working around have been fixed in LLVM 9.
2019-04-18hide `--explain` hint if error has no extended infoAndy Russell-8/+0
2019-02-08Add simd_saturating_{add,sub} intrinsicsgnzlbg-0/+53
2019-01-24Auto merge of #57269 - gnzlbg:simd_bitmask, r=rkruppebors-0/+123
Add intrinsic to create an integer bitmask from a vector mask This PR adds a new simd intrinsic: `simd_bitmask(vector) -> unsigned integer` that creates an integer bitmask from a vector mask by extracting one bit of each vector lane. This is required to implement: https://github.com/rust-lang-nursery/packed_simd/issues/166 . EDIT: the reason we need an intrinsics for this is that we have to truncate the vector lanes to an `<i1 x N>` vector, and then bitcast that to an `iN` integer (while making sure that we only materialize `i8`, ... , `i64` - that is, no `i1`, `i2`, `i4`, types), and we can't do any of that in a Rust library. r? @rkruppe
2019-01-22Add intrinsic to create an integer bitmask from the MSB of integer vectorsgnzlbg-0/+123
2019-01-14rustc: Remove platform intrinsics crateAlex Crichton-172/+0
This was originally attempted in #57048 but it was realized that we could fully remove the crate via the `"unadjusted"` ABI on intrinsics. This means that all intrinsics in stdsimd are implemented directly against LLVM rather than using the abstraction layer provided here. That ends up meaning that this crate is no longer used at all. This crate developed long ago to implement the SIMD intrinsics, but we didn't end up using it in the long run. In that case let's remove it!
2019-01-11Update testsJohn Kåre Alsaker-36/+36
2018-12-25Remove licensesMark Rousskov-165/+85
2018-12-24make non_camel_case_types an early lintAndy Russell-12/+13
2018-12-14rustc: Add an unstable `simd_select_bitmask` intrinsicAlex Crichton-4/+22
This is going to be required for binding a number of AVX-512 intrinsics in the `stdsimd` repository, and this intrinsic is the same as `simd_select` except that it takes a bitmask as the first argument instead of a SIMD vector. This bitmask is then transmuted into a `<NN x i8>` argument, depending on how many bits it is. cc rust-lang-nursery/stdsimd#310
2018-12-13rustc: Add an unstable `simd_select_bitmask` intrinsicAlex Crichton-4/+32
This is going to be required for binding a number of AVX-512 intrinsics in the `stdsimd` repository, and this intrinsic is the same as `simd_select` except that it takes a bitmask as the first argument instead of a SIMD vector. This bitmask is then transmuted into a `<NN x i8>` argument, depending on how many bits it is. cc rust-lang-nursery/stdsimd#310
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-1/+1
2018-08-14Merged migrated compile-fail tests and ui tests. Fixes #46841.David Wood-0/+1068