[all-commits] [llvm/llvm-project] 4db11c: [AArch64] Lower scalable i1 vector add reduction t...

Max Beck-Jones via All-commits all-commits at lists.llvm.org
Mon Jul 22 02:14:49 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4db11c1f6cd6cd12b51a3220a54697b90e2e8821
      https://github.com/llvm/llvm-project/commit/4db11c1f6cd6cd12b51a3220a54697b90e2e8821
  Author: Max Beck-Jones <max.beck-jones at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll

  Log Message:
  -----------
  [AArch64] Lower scalable i1 vector add reduction to cntp (#99031)

Doing an add reduction on a vector of i1 elements is the same as
counting the number of set elements so such a reduction can be lowered
to a cntp instruction. This saves a number of instructions over
performing a UADDV. This patch only handles straightforward cases (i.e.
when vectors are not split).



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