1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/test/Analysis/ValueTracking
Philip Reames c349ecadfa Recommit "Generalize getInvertibleOperand recurrence handling slightly"
This was reverted because of a reported problem.  It turned out this patch didn't introduce said problem, it just exposed it more widely.  15a4233 fixes the root issue, so this simple a) rebases over that, and b) adds a much more extensive comment explaining why that weakened assert is correct.

Original commit message follows:

Follow up to D99912, specifically the revert, fix, and reapply thereof.

This generalizes the invertible recurrence logic in two ways:
* By allowing mismatching operand numbers of the phi, we can recurse through a pair of phi recurrences whose operand orders have not been canonicalized.
* By allowing recurrences through operand 1, we can invert these odd (but legal) recurrence.

Differential Revision: https://reviews.llvm.org/D100884
2021-05-03 16:40:56 -07:00
..
aarch64.irg.ll
assume-queries-counter.ll
assume.ll
deref-abstract-gc.ll
deref-bitcast-of-gep.ll
dereferenceable-and-aligned.ll
func-ptr-lsb.ll
gep-negative-issue.ll
get-pointer-base-with-const-off.ll
invariant.group.ll
known-bits-from-operator-constexpr.ll
known-bits-from-range-md.ll
known-non-equal.ll Recommit "Generalize getInvertibleOperand recurrence handling slightly" 2021-05-03 16:40:56 -07:00
known-nonnull-at.ll
known-power-of-two.ll
knownzero-addrspacecast.ll
knownzero-shift.ll
memory-dereferenceable.ll
monotonic-phi.ll
non-negative-phi-bits.ll
numsignbits-from-assume.ll
pr23011.ll
select-pattern.ll
shift-recurrence-knownbits.ll
signbits-extract-elt.ll