Improve reducer algorithm and other changes (#2472)
Fix #2475. Fix #2476. * Improve reducer algorithm: shrink granularity, remove an early return, no lazy initialization, notify pass if binary is interesting, add comments. * Add fail-on-validation-error option to fail a reduction if an invalid state is reached; useful for tests. * Set fail-on-validation-error in tests. * Improve some documentation comments. * Add Reducer::AddDefaultReductionPasses so tests (and other library consumers) can add the default reduction passes. * Add CLIMessageConsumer in test_reduce so we can see messages for tricky tests. * Remove test RemoveUnreferencedInstructionReductionPassTest_ApplyReduction because it was indirectly testing the reduction algorithm, not the RemoveUnreferencedInstruction pass. * Tweak tests where needed.
Loading
Please register or sign in to comment