[all-commits] [llvm/llvm-project] 1ebe8f: [RISCV] Share reduction lowering code for vp.reduce

Philip Reames via All-commits all-commits at lists.llvm.org
Fri Dec 9 12:23:22 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1ebe8f4c45b8715c34c5a56e930694fa98478c93
      https://github.com/llvm/llvm-project/commit/1ebe8f4c45b8715c34c5a56e930694fa98478c93
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2022-12-09 (Fri, 09 Dec 2022)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Share reduction lowering code for vp.reduce

We can consolidate code and clarify edge case behavior at the same time.

There are two functional differences here.

First, I remove the ResVT handling, and always use the reduction element type. This appears to be dead code. There's no test coverage, and this code doesn't need to account for scalar type legalization anyways.

Second, if the VL happens to be known non-zero, we can avoid passing through start. This is mostly needed to allow reuse of the existing code; I don't consider it interesting as an optimization on it's own.

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




More information about the All-commits mailing list