[PATCH] D74066: [ValueTracking] usub(a, b) cannot overflow if a >= b.

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 5 09:55:45 PST 2020


nikic added a comment.

My only concern here is compile-time impact. Keep in mind that this function is not just being called for `usub.with.overflow`, but for every `sub` in the IR, trying to infer the `nuw` flag. As `isImpliedByDomCondition()` only inspects the direct predecessor, that's probably fine though.

Generally we're missing a pass that can propagate conditions and assumes with non-constant operands (CVP mostly covers the constant operand case)...


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74066/new/

https://reviews.llvm.org/D74066





More information about the llvm-commits mailing list