efriedma added inline comments.
================ Comment at: clang/lib/CodeGen/CGBuiltin.cpp:7683 + if (TypeFlags.isExpandOp1SVALL()) { + if (Ops.size() <= 1) + Ops.push_back(Builder.getInt32(31)); ---------------- sdesmalen wrote: > efriedma wrote: > > The `Ops.size() <= 1` seems to return the same result for all the > > intrinsics you're implementing now. Does it become relevant later? > Yes that's right, this is there for the saturating inc/dec intrinsics, e.g. > > There is the one that takes a predicate pattern: > ```int32_t svqdecb_pat[_n_s32](int32_t op, svpattern pattern, uint64_t > imm_factor)``` > > and one where the pattern SV_ALL is implicit (and inserted as the second > operand): > ```int32_t svqdecb[_n_s32](int32_t op, uint64_t imm_factor)``` I think it would be more clear to use a separate flag for that, so it's obvious what codepaths in EmitAArch64SVEBuiltinExpr actually correspond to particular intrinsics. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77597/new/ https://reviews.llvm.org/D77597 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits