[all-commits] [llvm/llvm-project] 71be02: [SelectionDAG][PowerPC] Memset reuse vector elemen...

Ting Wang via All-commits all-commits at lists.llvm.org
Tue Sep 5 22:54:58 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 71be020dda2c97c2733e45f4b1003d1c135b3b43
      https://github.com/llvm/llvm-project/commit/71be020dda2c97c2733e45f4b1003d1c135b3b43
  Author: Ting Wang <Ting.Wang.SH at ibm.com>
  Date:   2023-09-06 (Wed, 06 Sep 2023)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstrP10.td
    M llvm/test/CodeGen/PowerPC/memset-tail.ll

  Log Message:
  -----------
  [SelectionDAG][PowerPC] Memset reuse vector element for tail store

On PPC there are instructions to store element from vector(e.g.
stxsdx/stxsiwx), and these instructions can be leveraged to avoid tail
constant in memset and constant splat array initialization.

This patch tries to explore these opportunities.

Reviewed By: shchenz

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




More information about the All-commits mailing list