[all-commits] [llvm/llvm-project] a4b6b1: [InterleaveAccess] Recognise Interleave loads thro...

David Green via All-commits all-commits at lists.llvm.org
Thu Oct 29 02:13:52 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a4b6b1e1c83fdfc5954e0fb631c2e6237236589e
      https://github.com/llvm/llvm-project/commit/a4b6b1e1c83fdfc5954e0fb631c2e6237236589e
  Author: David Green <david.green at arm.com>
  Date:   2020-10-29 (Thu, 29 Oct 2020)

  Changed paths:
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/test/CodeGen/AArch64/vldn_shuffle.ll
    M llvm/test/CodeGen/Thumb2/mve-vldshuffle.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/binopshuffles.ll

  Log Message:
  -----------
  [InterleaveAccess] Recognise Interleave loads through binary operations

Instcombine will currently sink identical shuffles though vector binary
operations. This is probably generally useful, but can break up the code
pattern we use to represent an interleaving load group. This patch
reverses that in the InterleaveAccessPass to re-recognise the pattern of
shuffles sunk past binary operations and folds them back if an
interleave group can be created.

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




More information about the All-commits mailing list