[clang] [clang] VectorExprEvaluator::VisitCallExpr - add constant folding for X86 pslldqi/psrldqi intrinsics (PR #157403)
Simon Pilgrim via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 29 03:03:30 PDT 2025
================
@@ -3571,7 +3607,14 @@ bool InterpretBuiltin(InterpState &S, CodePtr OpPC, const CallExpr *Call,
case Builtin::BI__builtin_elementwise_fshr:
return interp__builtin_elementwise_triop(S, OpPC, Call,
llvm::APIntOps::fshr);
-
+ case clang::X86::BI__builtin_ia32_pslldqi128:
+ case clang::X86::BI__builtin_ia32_pslldqi256:
+ case clang::X86::BI__builtin_ia32_pslldqi512:
+ case clang::X86::BI__builtin_ia32_psrldqi128:
+ case clang::X86::BI__builtin_ia32_psrldqi256:
+ case clang::X86::BI__builtin_ia32_psrldqi512:
+ return interp__builtin_byteshift(S, OpPC, Call, BuiltinID);
----------------
RKSimon wrote:
`return interp__builtin_byteshift(S, OpPC, Call, BuiltinID(), /*IsLeft=*/false);`
https://github.com/llvm/llvm-project/pull/157403
More information about the cfe-commits
mailing list