[all-commits] [llvm/llvm-project] 13b762: [GlobalISel][AArch64] Combine unmerge(G_EXT v, und...

Vladislav Dzhidzhoev via All-commits all-commits at lists.llvm.org
Tue Sep 5 07:15:14 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 13b7629a58dd5a020d9e5bbe77d676b60bfc512a
      https://github.com/llvm/llvm-project/commit/13b7629a58dd5a020d9e5bbe77d676b60bfc512a
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2023-09-05 (Tue, 05 Sep 2023)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-unmerge-ext.mir
    M llvm/test/CodeGen/AArch64/arm64-neon-add-pairwise.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt_f.ll

  Log Message:
  -----------
  [GlobalISel][AArch64] Combine unmerge(G_EXT v, undef) to unmerge(v).

When having <N x t> d1, unused = unmerge(G_EXT <2*N x t> v1, undef, N),
it is possible to express it just as unused, d1 = unmerge v1.

It is useful for tackling regressions in arm64-vcvt_f.ll, introduced in
https://reviews.llvm.org/D144670.




More information about the All-commits mailing list