[all-commits] [llvm/llvm-project] 4551a4: [NFC][InstCombine] Add tests for smin reduction w/...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Mon Aug 2 14:33:31 PDT 2021


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

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

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


  Commit: f47b7b6d10c77cce77c9456f788bcc77b3a19ebb
      https://github.com/llvm/llvm-project/commit/f47b7b6d10c77cce77c9456f788bcc77b3a19ebb
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-08-03 (Tue, 03 Aug 2021)

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

  Log Message:
  -----------
  [InstCombine] `vector_reduce_smin(?ext(<n x i1>))` --> `?ext(vector_reduce_{or,and}(<n x i1>))` (PR51259)

Alive2 agrees:
https://alive2.llvm.org/ce/z/noXtZ8 (self)
https://alive2.llvm.org/ce/z/JNrN6C (zext)
https://alive2.llvm.org/ce/z/58snuN (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.


  Commit: d7482a2bded334710816ea0fc9fbbb6ec09d673e
      https://github.com/llvm/llvm-project/commit/d7482a2bded334710816ea0fc9fbbb6ec09d673e
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-08-03 (Tue, 03 Aug 2021)

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

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


  Commit: 554fc9ad0a24f6689c61d080c9451edd2ddc90b1
      https://github.com/llvm/llvm-project/commit/554fc9ad0a24f6689c61d080c9451edd2ddc90b1
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-08-03 (Tue, 03 Aug 2021)

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

  Log Message:
  -----------
  [InstCombine] `vector_reduce_smax(?ext(<n x i1>))` --> `?ext(vector_reduce_{and,or}(<n x i1>))` (PR51259)

Alive2 agrees:
https://alive2.llvm.org/ce/z/3oqir9 (self)
https://alive2.llvm.org/ce/z/6cuI5m (zext)
https://alive2.llvm.org/ce/z/4FL8rD (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/ecc2c9ba4547...554fc9ad0a24


More information about the All-commits mailing list