[all-commits] [llvm/llvm-project] 643c38: [AArch64] Remove EXT instr before UZP when extract...

Lukacma via All-commits all-commits at lists.llvm.org
Thu May 9 03:10:24 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 643c38333fc1b1e7e705e6e1035c595bbd95bc74
      https://github.com/llvm/llvm-project/commit/643c38333fc1b1e7e705e6e1035c595bbd95bc74
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-05-09 (Thu, 09 May 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/aarch64-vuzp.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-add-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/fixed-vector-deinterleave.ll
    M llvm/test/CodeGen/AArch64/neon-perm.ll
    M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll

  Log Message:
  -----------
  [AArch64] Remove EXT instr before UZP when extracting elements from vector (#91328)

Assembly generated for getting odd/even elements from vector contained
extra EXT instruction. This was due to way llvm constructs DAGs when
vector_shuffling from larger type to smaller. This patch optimises DAG
in these situations, allowing for correct assembly to be emitted.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list