[all-commits] [llvm/llvm-project] ab4cd1: [RISCV] Refactor performSUBCombine to prepare for ...

Craig Topper via All-commits all-commits at lists.llvm.org
Wed Aug 17 09:50:33 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ab4cd154c6deffb0211ff4d2ac1f0932d8de0d74
      https://github.com/llvm/llvm-project/commit/ab4cd154c6deffb0211ff4d2ac1f0932d8de0d74
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2022-08-17 (Wed, 17 Aug 2022)

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

  Log Message:
  -----------
  [RISCV] Refactor performSUBCombine to prepare for D132000.

This refactors the code into a separate function with early returns.
D132000 adds an additional operation to the if/else that selects
NewLHS, but can otherwise share the rest of the code.

Reviewed By: reames

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


  Commit: 550fab53e1dab6e5640c62a9a30a25a59ca1e735
      https://github.com/llvm/llvm-project/commit/550fab53e1dab6e5640c62a9a30a25a59ca1e735
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2022-08-17 (Wed, 17 Aug 2022)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/float-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/half-select-fcmp.ll

  Log Message:
  -----------
  [RISCV] Fold (sub C, (xor (setcc), 1)) -> (add (setcc), C-1).

Extracted from D131729 where we handled C==0. It's now generalized
to more constants.

Reviewed By: reames

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


Compare: https://github.com/llvm/llvm-project/compare/9525015c1bed...550fab53e1da


More information about the All-commits mailing list