[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
Loading
Please sign in to comment