Description
We compile a program 2 or 3 times: without firebuild (for non-debug runs only), with firebuild and empty cache, with firebuild from cache.
We should compare the resulting trees in these runs and make sure they are identical. (Mark which projects are expected to produce the very same tree, mark which files under certain projects are allowed to be different. Make perftest shout out loudly if it's not met. Have some easy means of showing the differences, including keeping the entire trees on the filesystem.)
Do the same with the build procedure's stdout and stderr too (probably can only be done for -j1; probably the non-firebuild run should be excluded as that one sees a terminal and hence often results in different formatting than the firebuild ones).