================ @@ -2817,6 +2817,82 @@ static bool interp__builtin_select(InterpState &S, CodePtr OpPC, return true; } +static bool interp__builtin_elementwise_fsh(InterpState &S, CodePtr OpPC, + const CallExpr *Call, + unsigned BuiltinID) { + assert(Call->getNumArgs() == 3); + + const QualType &Arg1Type = Call->getArg(0)->getType(); + const QualType &Arg2Type = Call->getArg(1)->getType(); + const QualType &Arg3Type = Call->getArg(2)->getType(); + + // Non-vector integer types. + if (!Arg1Type->isVectorType()) { + assert(!Arg2Type->isVectorType()); + assert(!Arg3Type->isVectorType()); + const APSInt &Shift = popToAPSInt( + S.Stk, *S.getContext().classify(Call->getArg(2)->getType())); + const APSInt &Lo = popToAPSInt( + S.Stk, *S.getContext().classify(Call->getArg(1)->getType())); + const APSInt &Hi = popToAPSInt( + S.Stk, *S.getContext().classify(Call->getArg(0)->getType())); + APSInt Result; + if (BuiltinID == Builtin::BI__builtin_elementwise_fshl) { ---------------- tbaederr wrote:
```suggestion if (BuiltinID == Builtin::BI__builtin_elementwise_fshl) ``` https://github.com/llvm/llvm-project/pull/153572 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits