diff options
author | Thurston Dang <thurston@google.com> | 2025-09-24 23:32:40 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-09-24 16:32:40 -0700 |
commit | 475e0ee7fa446beb0e57ab508645418cd8a5d68e (patch) | |
tree | c5842b74d91995ef39ca016e6c61ffc9ad837680 /llvm/lib/CodeGen/MachineInstr.cpp | |
parent | 370db9c62910195e664e82dde6f0adb3e255a4fd (diff) | |
download | llvm-475e0ee7fa446beb0e57ab508645418cd8a5d68e.zip llvm-475e0ee7fa446beb0e57ab508645418cd8a5d68e.tar.gz llvm-475e0ee7fa446beb0e57ab508645418cd8a5d68e.tar.bz2 |
[msan][NFCI] Generalize handleAVX512VectorGenericMaskedFP() operands (#159966)
This generalizes handleAVX512VectorGenericMaskedFP() (introduced in
#158397), to potentially handle intrinsics that have A/WriteThru/Mask in
an operand order that is different to AVX512/AVX10 rcp and rsqrt. Any
operands other than A and WriteThru must be fully initialized.
For example, the generalized handler could be applied in follow-up work
to many of the AVX512 rndscale intrinsics:
```
<32 x half> @llvm.x86.avx512fp16.mask.rndscale.ph.512(<32 x half>, i32, <32 x half>, i32, i32)
<16 x float> @llvm.x86.avx512.mask.rndscale.ps.512(<16 x float>, i32, <16 x float>, i16, i32)
<8 x double> @llvm.x86.avx512.mask.rndscale.pd.512(<8 x double>, i32, <8 x double>, i8, i32)
A Imm WriteThru Mask Rounding
<8 x float> @llvm.x86.avx512.mask.rndscale.ps.256(<8 x float>, i32, <8 x float>, i8)
<4 x float> @llvm.x86.avx512.mask.rndscale.ps.128(<4 x float>, i32, <4 x float>, i8)
<4 x double> @llvm.x86.avx512.mask.rndscale.pd.256(<4 x double>, i32, <4 x double>, i8)
<2 x double> @llvm.x86.avx512.mask.rndscale.pd.128(<2 x double>, i32, <2 x double>, i8)
A Imm WriteThru Mask
```
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
0 files changed, 0 insertions, 0 deletions