[all-commits] [llvm/llvm-project] cdd922: [InstCombine] Simplify the overflow result of `umu...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Tue Feb 6 11:10:54 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cdd9221489ec4ed6afc0e5146c2fae4daa8ab260
      https://github.com/llvm/llvm-project/commit/cdd9221489ec4ed6afc0e5146c2fae4daa8ab260
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-02-07 (Wed, 07 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/umulo-square.ll

  Log Message:
  -----------
  [InstCombine] Simplify the overflow result of `umulov X, X` (#80796)

This patch does the following folds if only the overflow result is used:
```
extractvalue (umul.with.overflow iN X, X), 1 -> icmp ugt X, 2^(N/2)-1
```
Alive2: https://alive2.llvm.org/ce/z/a8yPC6




More information about the All-commits mailing list