This is an archive of the discontinued LLVM Phabricator instance.

[SCEV] Add stricter verification option.
ClosedPublic

Authored by fhahn on Oct 7 2019, 2:11 PM.

Details

Summary

Currently -verify-scev only fails if there is a constant difference
between two BE counts. This misses a lot of cases.

This patch adds a -verify-scev-strict options, which fails for any
non-zero differences, if used together with -verify-scev.

With the stricter checking, some unit tests fail because
of mis-matches, especially around IndVarSimplify.

If there is no reason I am missing for just checking constant deltas, I
am planning on looking into the various failures.

Diff Detail

Event Timeline

fhahn created this revision.Oct 7 2019, 2:11 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 7 2019, 2:11 PM
sanjoy.google accepted this revision.Oct 7 2019, 2:16 PM

lgtm

Last time I looked at this I concluded it would be difficult to make enable something like this consistently, but no harm in trying.

This revision is now accepted and ready to land.Oct 7 2019, 2:16 PM
This revision was automatically updated to reflect the committed changes.