================
@@ -5112,6 +5123,42 @@ bool InterpretBuiltin(InterpState &S, CodePtr OpPC,
const CallExpr *Call,
case X86::BI__builtin_ia32_vpconflictdi_256:
case X86::BI__builtin_ia32_vpconflictdi_512:
return interp__builtin_ia32_vpconflict(S, OpPC, Call);
+ case X86::BI__builtin_ia32_compressdf128_mask:
+ case X86::BI__builtin_ia32_compressdf256_mask:
+ case X86::BI__builtin_ia32_compressdf512_mask:
+ case X86::BI__builtin_ia32_compressdi128_mask:
+ case X86::BI__builtin_ia32_compressdi256_mask:
+ case X86::BI__builtin_ia32_compressdi512_mask:
+ case X86::BI__builtin_ia32_compresshi128_mask:
+ case X86::BI__builtin_ia32_compresshi256_mask:
+ case X86::BI__builtin_ia32_compresshi512_mask:
+ case X86::BI__builtin_ia32_compressqi128_mask:
+ case X86::BI__builtin_ia32_compressqi256_mask:
+ case X86::BI__builtin_ia32_compressqi512_mask:
+ case X86::BI__builtin_ia32_compresssf128_mask:
+ case X86::BI__builtin_ia32_compresssf256_mask:
+ case X86::BI__builtin_ia32_compresssf512_mask:
+ case X86::BI__builtin_ia32_compresssi128_mask:
+ case X86::BI__builtin_ia32_compresssi256_mask:
+ case X86::BI__builtin_ia32_compresssi512_mask:
+ return interp__builtin_ia32_shuffle_generic(
+ S, OpPC, Call,
+ [NumElems = Call->getArg(0)
+ ->getType()
+ ->castAs<VectorType>()
+ ->getNumElements()](unsigned DstIdx,
----------------
RKSimon wrote:
(style) pull out the NumElems def to avoid clang-format messiness:
```
unsigned NumElems =
Call->getArg(0)->getType()->castAs<VectorType>()->getNumElements();
return interp__builtin_ia32_shuffle_generic(S, OpPC, Call, [NumElems](...
```
https://github.com/llvm/llvm-project/pull/187656
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits