Instead of calling exit() when a verification step fails we should keep
reducing the input. This is in line with what we do in other cases when
opt fails (see performFinalCleanups(), extractLoop(), etc).
I have a test case that provides coverage for this change, but it's
large and (for now) relies on an uncommitted assertion in SelectionDAG.
I don't think it's worthwhile to test this change in-tree because a
bugfix to a bugpoint reducer could break the test. (It would be fair to
say that the real problem I'm having is that some reducer is buggy, and
that I could just try to fix that instead, but unless we instantly fix
all reducer bugs having this "keep going" behavior sgtm. Thoughts?)