[PATCH] D104236: [AArch64] Add a TableGen pattern to generate uaddlv from uaddlp and addv

JinGu Kang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 18 09:17:14 PDT 2021


jaykang10 added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64InstrInfo.td:5674
+            (i64 0))), (i64 0))),
+          (EXTRACT_SUBREG (INSERT_SUBREG (v4i16 (IMPLICIT_DEF)),
+           (UADDLVv4i16v V64:$op), ssub), ssub)>;
----------------
dmgreen wrote:
> v4i16 -> v2i32 here?
> 
> But I think the pattern may work without the vector_extract / insert_subvector, just like the v4i32 and v2i64 patterns do. Then it is overall a bit simpler.
> v4i16 -> v2i32 here?
Oops, sorry. Let me update it.
 
> But I think the pattern may work without the vector_extract / insert_subvector, just like the v4i32 and v2i64 patterns do. Then it is overall a bit simpler.
You are right! Let me make it simpler.



================
Comment at: llvm/test/CodeGen/AArch64/neon-uaddlv.ll:23
+; CHECK-NEXT:    ret
+        %tmp1 = load <8 x i8>, <8 x i8>* %A
+        %tmp3 = call <4 x i16> @llvm.aarch64.neon.uaddlp.v4i16.v8i8(<8 x i8> %tmp1)
----------------
dmgreen wrote:
> There are a lot of spaces here. Can you cut them down to 2, as would be more common :)
Yep, let me update it.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D104236/new/

https://reviews.llvm.org/D104236



More information about the llvm-commits mailing list