[llvm] [LV][EVL] Support call instruction with EVL-vectorization (PR #110412)

Mel Chen via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 7 05:12:13 PST 2024


================
@@ -117,9 +117,13 @@ bool llvm::isVectorIntrinsicWithScalarOpAtArg(Intrinsic::ID ID,
                                               unsigned ScalarOpdIdx) {
   switch (ID) {
   case Intrinsic::abs:
+  case Intrinsic::vp_abs:
   case Intrinsic::ctlz:
+  case Intrinsic::vp_ctlz:
   case Intrinsic::cttz:
+  case Intrinsic::vp_cttz:
   case Intrinsic::is_fpclass:
+  case Intrinsic::vp_is_fpclass:
   case Intrinsic::powi:
     return (ScalarOpdIdx == 1);
----------------
Mel-Chen wrote:

Seem like the document need to update! 🫠 
```
commit 419948fe6708021524f86e15d755719d634ab8d2

Refs: llvmorg-17-init-2994-g419948fe6708
Author:     Yeting Kuo <yeting.kuo at sifive.com>
AuthorDate: Wed Feb 22 14:50:11 2023 +0800
Commit:     Yeting Kuo <yeting.kuo at sifive.com>
CommitDate: Thu Feb 23 13:58:21 2023 +0800

    [VP] Reorder is_int_min_poison/is_zero_poison operand before mask for vp.abs/ctlz/cttz.

    The patch ensures last two operands of vp.abs/ctlz/cttz are mask and evl.

    Reviewed By: craig.topper

    Differential Revision: https://reviews.llvm.org/D144536
```

https://github.com/llvm/llvm-project/pull/110412


More information about the llvm-commits mailing list