[all-commits] [llvm/llvm-project] 7cc57c: [AArch64] Handle vector with two different values ...

JinGu Kang via All-commits all-commits at lists.llvm.org
Thu May 11 02:41:42 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7cc57c07e36fc6b4d176cebb28a9bbe637772175
      https://github.com/llvm/llvm-project/commit/7cc57c07e36fc6b4d176cebb28a9bbe637772175
  Author: Jingu Kang <jingu.kang at arm.com>
  Date:   2023-05-11 (Thu, 11 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 with efficient vector mask

When we lower BUILD_VECTOR to VECTOR_SHUFFL, we could generate efficient vector
mask. For example,

 t24: v8i8 = BUILD_VECTOR t25, t25, t25, t25, t26, t26, t26, t26
 ==>
   t27: v8i8 = BUILD_VECTOR t26, t26, t26, t26, t26, t26, t26, t26
   t28: v8i8 = BUILD_VECTOR t25, t25, t25, t25, t25, t25, t25, t25
 t29: v8i8 = vector_shuffle<0,1,2,3,12,13,14,15> t27, t2

Differential Revision: https://reviews.llvm.org/D150345




More information about the All-commits mailing list