[all-commits] [llvm/llvm-project] 6192fa: [InstSimplify] Use multi-op replacement when simpl...

goldsteinn via All-commits all-commits at lists.llvm.org
Tue Jan 7 09:42:23 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6192fafe9c8d287daa9d40e3adcd24220a7872af
      https://github.com/llvm/llvm-project/commit/6192fafe9c8d287daa9d40e3adcd24220a7872af
  Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
  Date:   2025-01-07 (Tue, 07 Jan 2025)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
  [InstSimplify] Use multi-op replacement when simplify `select` (#121708)

- **[InstSimplify] Refactor `simplifyWithOpsReplaced` to allow multiple
replacements; NFC**
- **[InstSimplify] Use multi-op replacement when simplify `select`**

In the case of `select X | Y == 0 :...` or `select X & Y == -1 : ...`
we can do more simplifications by trying to replace both `X` and `Y`
with the respective constant at once.

Handles some cases for https://github.com/llvm/llvm-project/pull/121672
more generically.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list