[all-commits] [llvm/llvm-project] 8baea4: [NFC][InstCombine] Add tests for mul reduction w/ ...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Mon Aug 2 12:03:36 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8baea415706fba58d9e33e63d3b48262332f12dc
      https://github.com/llvm/llvm-project/commit/8baea415706fba58d9e33e63d3b48262332f12dc
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-08-02 (Mon, 02 Aug 2021)

  Changed paths:
    A llvm/test/Transforms/InstCombine/reduction-mul-sext-zext-i1.ll

  Log Message:
  -----------
  [NFC][InstCombine] Add tests for mul reduction w/ i1 element type (PR51259)


  Commit: 469793efa7b518e3b5a5bd68ed5e39a9f9f4121f
      https://github.com/llvm/llvm-project/commit/469793efa7b518e3b5a5bd68ed5e39a9f9f4121f
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-08-02 (Mon, 02 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/reduction-mul-sext-zext-i1.ll

  Log Message:
  -----------
  [InstCombine] `vector_reduce_mul(?ext(<n x i1>))` --> `zext(vector_reduce_and(<n x i1>))` (PR51259)

Alive2 agrees:
https://alive2.llvm.org/ce/z/PDansB (self)
https://alive2.llvm.org/ce/z/55D-Xc (zext)
https://alive2.llvm.org/ce/z/LxG3-r (sext)

We already handle `vector_reduce_and(<n x i1>)`,
so let's just combine into the already-handled pattern
and let the existing fold do the rest.


Compare: https://github.com/llvm/llvm-project/compare/9016beaa2430...469793efa7b5


More information about the All-commits mailing list