[all-commits] [llvm/llvm-project] b18161: [AArch64] Handle vector with two different values
JinGu Kang via All-commits
all-commits at lists.llvm.org
Fri May 5 07:04:40 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b18161d7850c5102e9882649278213e226bed610
https://github.com/llvm/llvm-project/commit/b18161d7850c5102e9882649278213e226bed610
Author: Jingu Kang <jingu.kang at arm.com>
Date: 2023-05-05 (Fri, 05 May 2023)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/build-vector-two-dup.ll
Log Message:
-----------
[AArch64] Handle vector with two different values
If vector has two different values and it can be splitted into two sub
vectors with same length, generate two DUP and CONCAT_VECTORS/VECTOR_SHUFFLE.
For example,
t22: v16i8 = BUILD_VECTOR t23, t23, t23, t23, t23, t23, t23, t23,
t24, t24, t24, t24, t24, t24, t24, t24
==>
t26: v8i8 = AArch64ISD::DUP t23
t28: v8i8 = AArch64ISD::DUP t24
t29: v16i8 = concat_vectors t26, t28
Differential Revision: https://reviews.llvm.org/D148347
More information about the All-commits
mailing list