[PATCH] D132261: [SLP]Do not reduce repeated values, use scalar red ops instead.

Matt D. via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 3 15:08:39 PDT 2023


Matt added a comment.

@ABataev  May I ask whether the change to constant folding semantics is intended with `-slp-optimize-identity-hor-reduction-ops`?

Cf. https://godbolt.org/z/G44xhKcTc

I wonder whether this may be connected to the constant folding similar to `createOp` related to this patch, https://github.com/llvm/llvm-project/issues/61224, https://github.com/llvm/llvm-project/commit/c411965820eb803dd7eac39f80357cad663b7ba0

- LLVM version 16.0.0

`opt -passes=slp-vectorizer`

  %mul = fmul reassoc nsz float 0x39B4484C00000000, 0x39B4484C00000000
  ret float %mul



- LLVM version 17.0.0git

`opt -passes=slp-vectorizer -slp-optimize-identity-hor-reduction-ops=0`

  %mul = fmul reassoc nsz float 0x39B4484C00000000, 0x39B4484C00000000
  ret float %mul



- LLVM version 17.0.0git

`opt -passes=slp-vectorizer`

  ret float 0.000000e+00


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D132261/new/

https://reviews.llvm.org/D132261



More information about the llvm-commits mailing list