[all-commits] [llvm/llvm-project] b06066: [SCEVExpander] Expand UDiv avoiding UB when in seq...

Florian Hahn via All-commits all-commits at lists.llvm.org
Thu Oct 17 13:55:42 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b060661da8b3b53db55644e5e358bb2dca8b56d7
      https://github.com/llvm/llvm-project/commit/b060661da8b3b53db55644e5e358bb2dca8b56d7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-17 (Thu, 17 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll

  Log Message:
  -----------
  [SCEVExpander] Expand UDiv avoiding UB when in seq_min/max. (#92177)

Update SCEVExpander to introduce an SafeUDivMode, which is set
when expanding operands of SCEVSequentialMinMaxExpr. In this mode,
the expander will make sure that the divisor of the expanded UDiv is
neither 0 nor poison.

Fixes https://github.com/llvm/llvm-project/issues/89958.


PR https://github.com/llvm/llvm-project/pull/92177



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