[PATCH] D77597: [SveEmitter] Add ExpandOp1SVALL and builtin for svptrue
Eli Friedman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Apr 16 15:37:55 PDT 2020
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
More information about the cfe-commits
mailing list