If a test executes quickly or if the timing resolution is too coarse,
the running time associated with a test could be zero. This happens
often for the //llvm/utils/lit/tests/reorder.py test on Windows, which
causes the test to fail non-deterministically.
This patch modifies the existing check, so that instead of skipping
zeros, lit now skips if the timing is None (presumably due to an error
in measurement). Recurring executions of the reorder.py test on Windows
seem to indicate that the test no longer exhibits occasional failure.
Reviewed By: stella.stamenova
Differential Revision: https://reviews.llvm.org/D143504
times_by_suite = {}
for t in tests:
assert t.suite.test_times is None
- if not t.result.elapsed:
+ if t.result.elapsed is None:
continue
if not t.suite.exec_root in times_by_suite:
times_by_suite[t.suite.exec_root] = read_test_times(t.suite)