[all-commits] [llvm/llvm-project] c9439c: [AArch64][SVE] Coalesce calls to the SVE ptrue int...

Joe Ellis via All-commits all-commits at lists.llvm.org
Thu Feb 4 06:11:18 PST 2021


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c9439ca36342fb6013187d0a69aef92736951476
      https://github.com/llvm/llvm-project/commit/c9439ca36342fb6013187d0a69aef92736951476
  Author: Joe Ellis <joe.ellis at arm.com>
  Date:   2021-02-04 (Thu, 04 Feb 2021)

  Changed paths:
    M llvm/lib/Target/AArch64/SVEIntrinsicOpts.cpp
    A llvm/test/CodeGen/AArch64/sve-coalesce-ptrue-intrinsics.ll

  Log Message:
  -----------
  [AArch64][SVE] Coalesce calls to the SVE ptrue intrinsic where possible

It is possible to eliminate redundant calls to the SVE ptrue intrinsic.
For example: suppose that we have two SVE ptrue intrinsic calls P1 and
P2. If P1 is at least as wide as P2, then P2 can be written as a
reinterpret P1 using the SVE reinterpret intrinsics.

Coalescing ptrue intrinsics can result in fewer ptrue instructions in
the codegen, and is conducive to better analysis further down the line.

This commit extends the aarch64-sve-intrinsic-opts pass to support
coalescing ptrue intrisic calls.

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




More information about the All-commits mailing list