[all-commits] [llvm/llvm-project] 745cfa: [InstCombine] Compute known bits for multi-use add...

Nikita Popov via All-commits all-commits at lists.llvm.org
Wed May 17 08:50:17 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 745cfa3449cd180949ae2ec31dae6c2fcb3e473c
      https://github.com/llvm/llvm-project/commit/745cfa3449cd180949ae2ec31dae6c2fcb3e473c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2023-05-17 (Wed, 17 May 2023)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/loop-scalars.ll

  Log Message:
  -----------
  [InstCombine] Compute known bits for multi-use add/sub

We were failing to set the known bits for add/sub in the multi-use
case, resulting in odd behavioral differences depending on the
number of uses. Noticed while adding a consistency assertion.

The test changes are essentially a revert to the state before
d6498ab. These changes are not really desirable, but if we don't
want them, that needs to be handled as part of the heuristic for
demanded constant shrinking, not by artifically suppressing the
known bits in one specific case.




More information about the All-commits mailing list