[all-commits] [llvm/llvm-project] 3c8016: [AArch64] Eliminate XTN/SSHLL for vector splats (#...

Guy David via All-commits all-commits at lists.llvm.org
Thu Feb 12 03:25:37 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3c8016c6371e36972f1b2b6e47a017d6f3bf9961
      https://github.com/llvm/llvm-project/commit/3c8016c6371e36972f1b2b6e47a017d6f3bf9961
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-02-12 (Thu, 12 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/vec-combine-trunc-dup-ext.ll

  Log Message:
  -----------
  [AArch64] Eliminate XTN/SSHLL for vector splats (#180913)

Combine:
  sext(duplane(insert_subvector(undef, trunc(X), 0), idx))
Into:
  duplane(X, idx)

This avoids XTN/SSHLL instruction sequences that occur when splatting
elements from boolean vectors after type legalization, which is common
when using shufflevector with comparison results.



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