[all-commits] [llvm/llvm-project] 9422a8: [Hexagon] Break up vectors into HVX-sized chunks i...

Krzysztof Parzyszek via All-commits all-commits at lists.llvm.org
Sat Oct 29 11:18:12 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9422a8d94c0f038b78427f58b31c1200aed7524c
      https://github.com/llvm/llvm-project/commit/9422a8d94c0f038b78427f58b31c1200aed7524c
  Author: Krzysztof Parzyszek <kparzysz at quicinc.com>
  Date:   2022-10-29 (Sat, 29 Oct 2022)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/qmul-chop.ll
    M llvm/test/CodeGen/Hexagon/autohvx/qmul.ll

  Log Message:
  -----------
  [Hexagon] Break up vectors into HVX-sized chunks in HvxIdioms

This will allow recognizing Q.31 multiplications on vectors that are
multiplies of HVX vectors. At the moment this comes at the expense of
Q.15 multiplications, which now are handled as 32-bit multiplications
with shifts.
In the longer term this will likely be replaced by a different scheme
of "legalizing" vectors, which is necessary for idiom recognition, at
least where using direct HVX instrinsics is desired.




More information about the All-commits mailing list