[all-commits] [llvm/llvm-project] 4ccdab: [ConstraintElim] Use isKnownNonNegative for condit...

Florian Hahn via All-commits all-commits at lists.llvm.org
Tue Nov 21 02:09:52 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4ccdab363618afbfd6958c4351c5a9ab3e37dcc8
      https://github.com/llvm/llvm-project/commit/4ccdab363618afbfd6958c4351c5a9ab3e37dcc8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2023-11-21 (Tue, 21 Nov 2023)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/transfer-signed-facts-to-unsigned-is-known-non-negative.ll
    M llvm/test/Transforms/ConstraintElimination/transfer-unsigned-facts-to-signed-is-known-non-negative.ll
    M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll

  Log Message:
  -----------
  [ConstraintElim] Use isKnownNonNegative for condition transfer. (#72879)

Use isKnownNonNegative for information transfer. This can improve
results, in cases where ValueTracking can infer additional non-negative
info, e.g. for phi nodes.

This allows simplifying the check from
https://github.com/llvm/llvm-project/issues/63126 by
ConstraintElimination. It is also simplified by IndVarSimplify now; note
the changes in llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll,
due to this now being simplified earlier.




More information about the All-commits mailing list