| Christopher Glaeser 2007-05-08, 8:08 am |
| Nullstone is an automated compiler performance analysis tool and it not a
validation suite per se, but it does check results to ensure the optimized
code is both fast and correct. It also includes a variety of test
categories that are specifically designed to catch the optimizer performing
overzealous optimizations. A couple examples include power-of-2 integer
division where the optimizer attempts to negate the largest negative number
(a very common defect when Nullstone was first released), and loop unrolling
of loops with an unsigned loop control variable that wraps across zero.
In addition, the coverage analysis of testing each optimization with all
applicable language features (e.g. data type = char, short, int, ... storage
class = static, auto, ..., operator = plus, minus, left shift, right shift,
.....) within various types of control flow (e.g. basic block, extended basic
block, simple loop, ...) isolates defects in corner cases that are otherwise
undetected. See www.nullstone.com for more information.
Best,
Christopher
|