[all-commits] [llvm/llvm-project] 91f7a4: Revert "[InstCombine] Recognize `((x * y) s/ x) !=...

Reid Kleckner via All-commits all-commits at lists.llvm.org
Tue Apr 20 16:02:43 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 91f7a4fff75179e75d38b692715ae69471668b5e
      https://github.com/llvm/llvm-project/commit/91f7a4fff75179e75d38b692715ae69471668b5e
  Author: Reid Kleckner <rnk at google.com>
  Date:   2021-04-20 (Tue, 20 Apr 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/test/Transforms/InstCombine/signed-mul-lack-of-overflow-check-via-mul-sdiv.ll
    M llvm/test/Transforms/InstCombine/signed-mul-overflow-check-via-mul-sdiv.ll

  Log Message:
  -----------
  Revert "[InstCombine] Recognize `((x * y) s/ x) !=/== y` as an signed multiplication overflow check (PR48769)"

This reverts commit 13ec913bdf500e2354cc55bf29e2f5d99e0c709e.

This commit introduces new uses of the overflow checking intrinsics that
depend on implementations in compiler-rt, which Windows users generally
do not link against. I filed an issue (somewhere) to make clang
auto-link the builtins library to resolve this situation, but until that
happens, it isn't reasonable for the optimizer to introduce new link
time dependencies.




More information about the All-commits mailing list