[all-commits] [llvm/llvm-project] 345d7b: [InstCombine] Fold minmax intrinsic using KnownBit...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Fri Dec 22 12:41:46 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 345d7b1618d48e658d3a72c5c258c1168dcee4bd
      https://github.com/llvm/llvm-project/commit/345d7b1618d48e658d3a72c5c258c1168dcee4bd
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2023-12-23 (Sat, 23 Dec 2023)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/minmax-intrinsics.ll

  Log Message:
  -----------
  [InstCombine] Fold minmax intrinsic using KnownBits information (#76242)

This patch tries to fold minmax intrinsic by using
`computeConstantRangeIncludingKnownBits`.
Fixes regression in
[_karatsuba_rec:cpython/Modules/_decimal/libmpdec/mpdecimal.c](https://github.com/python/cpython/blob/c31943af16f885c8cf5d5a690c25c366afdb2862/Modules/_decimal/libmpdec/mpdecimal.c#L5460-L5462),
which was introduced by #71396.
See also
https://github.com/dtcxzyw/llvm-opt-benchmark/issues/16#issuecomment-1865875756.

Alive2 for splat vectors with undef: https://alive2.llvm.org/ce/z/J8hKWd




More information about the All-commits mailing list