[all-commits] [llvm/llvm-project] 7f4ce3: [Hexagon] Introduce PS_vsplat[ir][bhw] pseudo inst...

Krzysztof Parzyszek via All-commits all-commits at lists.llvm.org
Fri Oct 14 12:03:40 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7f4ce3f1ebf6601b476aed901dd6ada3d402d210
      https://github.com/llvm/llvm-project/commit/7f4ce3f1ebf6601b476aed901dd6ada3d402d210
  Author: Krzysztof Parzyszek <kparzysz at quicinc.com>
  Date:   2022-10-14 (Fri, 14 Oct 2022)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    M llvm/lib/Target/Hexagon/HexagonPseudo.td
    M llvm/test/CodeGen/Hexagon/autohvx/int-to-fp.ll

  Log Message:
  -----------
  [Hexagon] Introduce PS_vsplat[ir][bhw] pseudo instructions

HVX v60 only has splats that take a 32-bit word as input, while v62+
has splats that take 8- or 16-bit value. This makes writing output
patterns that need to use a splat annoying, because the entire output
pattern needs to be replicated for various versions of HVX.
To avoid this, the patterns will always use the pseudos, and then the
pseudos will be handled using a post-ISel hook.




More information about the All-commits mailing list