[all-commits] [llvm/llvm-project] 4854fa: [RISCV] Move test from setcc-logic.ll to select-co...

Craig Topper via All-commits all-commits at lists.llvm.org
Tue Aug 16 14:14:58 PDT 2022


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/select-const.ll
    M llvm/test/CodeGen/RISCV/setcc-logic.ll

  Log Message:
  -----------
  [RISCV] Move test from setcc-logic.ll to select-const.ll. NFC

Also add setne version of the test.

Add some common prefixes to reduce number of identical CHECK lines.


  Commit: 1180ed41ee9de1804ddbfee4e6306dd20d12cd2b
      https://github.com/llvm/llvm-project/commit/1180ed41ee9de1804ddbfee4e6306dd20d12cd2b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2022-08-16 (Tue, 16 Aug 2022)

  Changed paths:
    M llvm/test/CodeGen/RISCV/select-const.ll

  Log Message:
  -----------
  [RISCV] Add more test cases for (sub C, (setcc x, y, eq/neq)) -> (add C-1, (setcc x, y, neq/eq)). NFC

In these test cases we do the transform, but the immediate is too
large to form an ADDI so it didn't save any instructions.

If the constant is opaque or has additional users we shouldn't do
the transform if it doesn't form an ADDI.


  Commit: de6fd169715764f0401d8580b64c11fda45101e1
      https://github.com/llvm/llvm-project/commit/de6fd169715764f0401d8580b64c11fda45101e1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2022-08-16 (Tue, 16 Aug 2022)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/select-const.ll

  Log Message:
  -----------
  [RISCV] Don't fold (sub C, (setcc x, y, eq/neq)) -> (add C-1, (setcc x, y, neq/eq)) if C-1 isn't simm12.

We still need to materialize the constant in a register and we
may not be removing all uses of the original constant so it may
increase code size.


Compare: https://github.com/llvm/llvm-project/compare/c248219b09c1...de6fd1697157


More information about the All-commits mailing list