aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2022-01-21 12:24:32 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2022-01-21 12:24:58 +0000
commit8ee135dcf8ff060656ad481c3e980fe8763576f5 (patch)
tree3dd61e4f358c905e1da3a5759cf644cb2d326432 /llvm/lib/Support
parent68db0e25df4b1edaa2c6080eb88453ab01ea01d3 (diff)
downloadllvm-8ee135dcf8ff060656ad481c3e980fe8763576f5.zip
llvm-8ee135dcf8ff060656ad481c3e980fe8763576f5.tar.gz
llvm-8ee135dcf8ff060656ad481c3e980fe8763576f5.tar.bz2
[X86] Remove `__builtin_ia32_pmax/min` intrinsics and use generic `__builtin_elementwise_max/min`
D111985 added the generic `__builtin_elementwise_max` and `__builtin_elementwise_min` intrinsics with the same integer behaviour as the SSE/AVX instructions This patch removes the `__builtin_ia32_pmax/min` intrinsics and just uses `__builtin_elementwise_max/min` - the existing tests see no changes: ``` __m256i test_mm256_max_epu32(__m256i a, __m256i b) { // CHECK-LABEL: test_mm256_max_epu32 // CHECK: call <8 x i32> @llvm.umax.v8i32(<8 x i32> %{{.*}}, <8 x i32> %{{.*}}) return _mm256_max_epu32(a, b); } ``` This requires us to add a `__v64qs` explicitly signed char vector type (we already have `__v16qs` and `__v32qs`). Sibling patch to D117791 Differential Revision: https://reviews.llvm.org/D117798
Diffstat (limited to 'llvm/lib/Support')
0 files changed, 0 insertions, 0 deletions