I'm abandoning this revision because I'm going to try and put this functionality in LIT proper. I have a working implementation that addresses @ddunbar's concerns that I will submit next week. http://reviews.llvm.org/D6010